Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置

Struts2框架应用基本流程与框架配置

1.struts框架实现web应用的基本配置

.JDK+Tomcat+Struts2 需要注意版本的匹配问题
.Web.xml关于struts中前端控制器的选择和配置
1)路径:不同版本的路径不同,
2)处理类:2.0.X-2.12版本之前是FilterDispatcher
2.1.3后就改为 StrutsPrepareAndExecuteFilte
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
这是Struts2框架开始工作的入口

2.创建基于Struts2框架的HelloWord工程
①.在JavaEE工作环境空间下,创建一个Dynamic Web Project
②.导入项目所需要的jar包,
(不一定非要全部导入,导致项目过大, 部署后启动时间过长,浪费时间)
③.编写web.xml文件,配置前端控制器
④.在src目录下创建一个struts.xml,等会需要完成到处理类的映射。
(需要注意的是):一定是src,名称也必须是struts.xml
⑤.编写Action处理类,
1)类中方法的访问权限必须是public
2)返回值类型必须是 String
3)方法名称可以自定义,默认为execute()
⑥.页面视图的编写,需要指定一个处理类来由Struts完成映射。
⑦.完成struts.xml的配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
⑧.URL进行访问。
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置

2.采用Struts2实现登录案例

登录案例其实无非就是用Form传递数据给服务器,服务器获取数据,然后服务器判断信 息是否 正确然后返回指定的页面。前面的步骤和HelloWorld基本上是一致的,需要注意的就是获取数据这块,需要保证form表单内控件的name和Action处理类所要接受的变量名一致,并且提供该属性的get/set方法。

Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置

3.采用不同业务控制类定义方式实现Login原型(Action的创建方式)

.上面登录案例就是使用的无侵入性实现。
优点:想换另一个框架很容易,耦合性不高,
缺点:但是实际上就没有用到Struts框架带给我们的便利。
.实现Action接口
优点:重写默认的execute()方法,避免了方法名写错;
可以是用Action提供的五种常量,也是避免了string写错,导致页面找不到。
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置

.继承父类ActionSupport类
优点:Action有的优点,ActionSupport类全有。
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置

Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
ActionSupport还提供了校验,国际化的功能。

5.表单数据处理的方式(三种)

.属性驱动:最普通的,上面用到的(保证控件名和参数一致
.对象驱动:最常用的,属性有多个时,get/set变得非常冗余,将这些属性封装为一个对象传递。只需要提对象的set/get方法。但需要保证有一个无参的构造方法。
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
.模型驱动

Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置

4.深入理解struts.xml配置文件作用

1.常量配置---扩展名配置(extension)

Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
表示扩展名可以是action或空。
以下在struts.xml文件中配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置

Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
2.常量配置–乱码配置()
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
3.开发模式(devMode)
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置我们在修改前端代码是可以不重启Tomcat,通过刷新就可以完成更新,
在这里开发模式如果value=true的话,他会重新加载配合文件

7.Action配置升级

之前对于几个很少页面的请求,用几个Action就完成了,但对于庞大的项目,需要些很多的action,编写起来麻烦,修改起来更麻烦。如下
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
.动态方法调用解决,该版本默认是关闭的。需要在常量中开启。将False改为True
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
.使用通配符解决*
如果有确定的action name, name先匹配确定的,通配符的优先级要低

Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置
Struts2框架搭建,项目创建流程,实现登录以及Action的三种实现方式,表单数据处理的三种方式,struts.xml常量配置