典当行以及海尔java小节
1.视图问题,发现jar包都出现在根目录下面了,非常不方便。结果如下表:
原始视图是JavaEE,切换到Java视图即可;
2.Tomcat编译的时候什么都没有加载,看到的是一堆红字,那是因为tomcat没有生成projectName.xml(%Tomcat Root%conf/Catalina/localhost目录下面)。右键工程->Tomcat project->Update Context Definition即会自动生成。
3.org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named '/BizOneAction' is defined org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
需要在一个app-context文件中注册这个Action,其实页面中对一个Action发出请求,在string里面其实是需要配置到相应的类中的。
4.spring+struts的结合是将所有的请求都发送给Action的Execute方法,其实在这里是不知道要调用Action里面的那个方法,需要在Execute里面去解析能够获取的参数,再决定调用哪个方法,毫无疑问,现在框架提供的是Struts1.X的方式,因为在struts2.X开始已经开始提供直接指定调用方法,而不需要再在Execute方法中实现再分配,但是1.X的处理方法有一种好处就是可以对错误进行统一的处理。
5.使用框架步骤
1)Create java class
2)add the app-context.xml about the action
3)Create the jsp file
4)config the struts-XXX.xml file
5)to modify the nav page, add the link for the action.
6)struts-text.xml的配置文件中写成了“path=/BigOne",报错:action=BingOneAcgtion路径不存在
后来发现是因为jsp文件上面的配置写错了,不过如果struts配置文件写的不正确也不能实现跳转,报道异常同上。
6.ME的小应用
1)通过小红钮判断是否处于Debug状态
2)通过右侧面板,选择”package Presentation“来是定包的现实形态是层级还是平铺。
3)F2修改包名称
4)对于正确的配置类名,当你摁住ctrl键光标点上的时候,它将会呈现下划线。
5)显示行号:在该显示行号的地方右键“show line number”,勾选即可。
6)List<T>是一个接口,List<T> = new ArrayList<T>();
7.对于同一个Action的请求将会自动存值,本质是ActionForm是会沿用一个,经过测试发现,如果是get的方式(比如href)actionForm总是一个新的,如果是send方式,ActionForm则会包含提交的内容,可以自动起到维护状态的作用。
8.Eclipse是会和一个tomcat绑定在一起,至于端口号等等都在这个tomcat里面的conf\Server.xml中定义。至于访问的路径的设定则是需要你右键工程->Tomcat project->Update context definition,这个时候自动的会在conf\Catalina\localhost中生成一个XXX.xml,在这个xml文件中的path属性中会定义这个工程的访问路径。比如在海尔空调工程中就是uhome(path值很多时候是和这个xml文件同名),这个XXX的名称是来自于工程右键->tomcat->context name。
9.war包本质是:类似于.net中的安装包;不过war包是带自己解压缩的,只要把war包放在指定的目录下面(默认的是webapp),重启tomcat,war包就会自动解压缩出来一个同名的文件夹,并将文件解压缩到文件夹里面。War的内容其实是web页面以及相关联的jar包。Jar和windows里面的dll本质还不相同,jar包是可以被解压缩的。我想这个可能是和java的虚拟技术有关,其实编译为二进制这个环节其实是交给JVM去做的,她会根据底层系统的不同,编译成为二进制文件)
10.下载最新的代码,从新搭建了一个workspace,发现:import javax.servlet.http.HttpServletRequest;报异常;上网调查得知这个是tomcat下面的lib里面serlet-api.jar下面的包裹。Config Build Path...,重新定义了TOMCAT_HOME(定义变量,指定了路径到tomcat根目录即可)。
11.发现F3定位不好使了,修改掉了所有的异常错误后,F3自动好使了。
12.svn切换后发现:工程前面有一个红色的叹号,OK,这代表引用的jar报有问题;
右键工程->Build Path->发现时JRE的library出现问题,点击“add Libraries...”,选择如下图所示即可。
后又发现很多工程因为编码问题出现乱码(E根据系统配置默认编码为GBK,但是老工程其实是UTF-8),导致程序编译出错:右键工程->Properties->Resource->File Text encoding中选择为UTF-8即可。