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

本文围绕Struts2框架展开,介绍其实现web应用的基本配置,包括JDK、Tomcat和Struts2版本匹配及前端控制器配置。还阐述了基于该框架创建HelloWord工程、实现登录案例的步骤,探讨了Action创建方式、表单数据处理方式,深入解析struts.xml配置文件作用及Action配置升级方法。

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

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

.JDK+Tomcat+Struts2 需要注意版本的匹配问题
.Web.xml关于struts中前端控制器的选择和配置
1)路径:不同版本的路径不同,
2)处理类:2.0.X-2.12版本之前是FilterDispatcher
2.1.3后就改为 StrutsPrepareAndExecuteFilte
这是Struts2框架开始工作的入口
这是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的配置
struts.xml
⑧.URL进行访问。
在这里插入图片描述

2.采用Struts2实现登录案例

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

struts自动转换

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

.上面登录案例就是使用的无侵入性实现。
优点:想换另一个框架很容易,耦合性不高,
缺点:但是实际上就没有用到Struts框架带给我们的便利。
.实现Action接口
优点:重写默认的execute()方法,避免了方法名写错;
可以是用Action提供的五种常量,也是避免了string写错,导致页面找不到。
实现Action接口

.继承父类ActionSupport类
优点:Action有的优点,ActionSupport类全有。
ActionSupport类实现Action
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ActionSupport还提供了校验,国际化的功能。

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

.属性驱动:最普通的,上面用到的(保证控件名和参数一致
.对象驱动:最常用的,属性有多个时,get/set变得非常冗余,将这些属性封装为一个对象传递。只需要提对象的set/get方法。但需要保证有一个无参的构造方法。
在这里插入图片描述
在这里插入图片描述
.模型驱动

字段普通不用写get、set方法

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

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

在这里插入图片描述在这里插入图片描述
表示扩展名可以是action或空。
以下在struts.xml文件中配置
在这里插入图片描述

在这里插入图片描述
2.常量配置–乱码配置()
在这里插入图片描述
3.开发模式(devMode)
在这里插入图片描述我们在修改前端代码是可以不重启Tomcat,通过刷新就可以完成更新,
在这里开发模式如果value=true的话,他会重新加载配合文件

7.Action配置升级

之前对于几个很少页面的请求,用几个Action就完成了,但对于庞大的项目,需要些很多的action,编写起来麻烦,修改起来更麻烦。如下
在这里插入图片描述在这里插入图片描述
.动态方法调用解决,该版本默认是关闭的。需要在常量中开启。将False改为True
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
.使用通配符解决*
如果有确定的action name, name先匹配确定的,通配符的优先级要低

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值