Struts2总结.docx
- 文档编号:2780259
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:20
- 大小:31.67KB
Struts2总结.docx
《Struts2总结.docx》由会员分享,可在线阅读,更多相关《Struts2总结.docx(20页珍藏版)》请在冰豆网上搜索。
Struts2总结
第一章MiniStruts的制作
不使用Servlet,也不使用request.getParameter()获取参数;是用户能够直接访问Dao中的查询方法?
1、可以使用filter过滤器,用来拦截用户的表单提交(请求的路径、请求的参数)。
2、根据路径分析出,应该调用哪个类的哪个方法。
3、根据请求的参数,动态的将参数的值,设置到类的属性中去。
4、执行完成之后,需要跳转的页面(创建xml配置文件,配置用户跳转的路径信息)。
一、struts的实现步骤
手动导入:
1.创建Web项目。
2.导入Strutrs的几个必须包(7个jar)。
3.在src目录下,创建struts.xml配置文件(名字和路径都不能改)。
4.在web.xml配置文件中,添加Struts的支持(配置一个filter过滤器)。
自动导入(Myeclipse8.0以上的版本):
第二章深入Struts
Struts2运行原理:
请求--->自定义过滤器---->filterdispatcher------>ActionProxy(代理,读取struts.xml的配置文件)---->ActionInvocation(action的调用者,调用具体的Action;在调用之前经过一系列的拦截器)——>执行完Action之后,跳转到对应的页面。
注意:
struts中的所有编码处理都是i18n拦截器处理,所有的表单数据处理都是在系统默认拦截器中获取。
Struts.xml配置文件详解:
--常量:
系统默认配置的量(名字不可改)-->
--常用的常量:
struts.custome.i18n.resources(国际化常量)-->
--常用的常量:
struts.i18n.encoding(编码方式常量,系统默认采用utf-8编码)-->
动态方法调用:
注意:
1.在配置
2.在请求action的路径指定需要执行的方法名即可。
(格式:
action名!
方法名.action)
使用通配符进行模糊匹配:
注意:
使用“*”号表示模糊匹配的值。
{1}表示占位符,在运行的过程中,被通配符所代替。
在这个Action的配置文件中,都可以使用{1}占位。
Struts2对返回结果页面进行配置:
type=””表示页面跳转的方式,默认表示内部跳转。
type=”redirect”表示页面使用外部跳转,注意外部跳转request中的数据将会丢失。
type=”redirectAction”表示跳转的页面将会是一个Action。
原样输出指定的页面:
全局结果配置:
--配置全局的结果,跳转页面-->
注意:
必须在action的最前面。
全局异常处理:
在异常处理页面,显示异常的信息:
<%@tagliburi="/struts-tags"prefix="s"%>
异常的信息:
propertyvalue="exceptionStack"/> 第三章Struts2的拦截器 1.什么是拦截器? 在用户访问Action之前和之后执行相应的操作,称为拦截器。 例如: 将表单中的数据自动转换到Action的属性,使用的就是一个拦截器。 2.拦截器与过滤器(filter)异同? a)过滤器是根据用户的地址进行过滤,可以过滤任意路径(包括jsp、html、action等等)。 b)拦截器只能用来过滤action,不依赖于访问的路径。 3.实现自定义拦截器步骤 *用户实现自定义拦截器步骤: * *1.继承AbstractInterceptor类,重写intercept()方法。 * *2.在struts.xml配置文件中,配置拦截器 * * * * *3.在需要拦截的action中引用拦截器。 * * * 使用拦截器注意事项: 1.在action中使用了自定义拦截器,系统默认的defaultStack拦截器链会失效;必须使用引入。 2.在引入多个拦截器的时候,推荐使用拦截器链的方式简化拦截器的使用。 在actin中调用使用如下方式: 第四章Struts2的类型转换器 1.Struts2中类型转换分为两种: a)手动(自定义)转换器 b)自动转换器 2.手动(自定义)转换器(针对特殊属性) a)在action的类中,必须继承ActionSupport类。 b)定义转换器的类,继承DefaultTypeConvert,重写convertValue()方法。 c)创建配置文件(注意: 1.文件名必须是: Action的类名-conversion.properties;2.必须将配置文件存放在Action所在的包中。 ) 3.自动转换器(常用的方式) 基本数据类型+String类型都是可以自动转换。 对象类型自动转换: 在input中使用: 对象名.属性名 第五章Struts2的输入验证 一.验证分类: 1.服务器端验证(Java代码来完成验证(Struts的内置验证框架,可以完成服务器端验证))。 2.客户端验证(js验证——在客户端执行,执行的时候依赖与客户度(手动js验证,jquery验证框架进行验证)) 二.Struts的内置验证框架: Struts2中验证有两种方式: 1.手动验证。 2.配置验证框架,自动验证。 三.内置验证框架使用步骤: 1.需要验证的Action必须继承自ActionSupport类。 2.创建验证配置文件。 要求: a)配置文件必须和action在同一目录。 b)文件名的格式必须是: Action类名-validation.xml(验证Action中的所有方法) Action类名-访问Action的名字-validation.xml(只会验证Action中指定的方法) 3.查看内置验证器: xwork-XXXXX.jar目录中(找到default.xml配置文件) 特别需要注意: 注意哦! 1.使用了验证器之后,如果验证失败;必须配置 2.如果jsp页面中使用了,Struts的标签;那么必须让这个jsp页面必须经过struts的核心过滤器,进行过滤;否则页面不能正常解析struts的标签。 3.基本数据类型,不能使用Struts的内置验证,建议使用包装类。 四.手动验证步骤: 1.继承ActionSupport,重写validate()方法。 在执行Action中具体的方法之前,会先执行validate()方法;如果有错误,则返回input指定的页面。 (有错误: super.addFiledError()) 手动验证总结: 1.可以在实体中的setXxx()方法进行控制。 2.在validate()方法中进行验证。 第六章Struts2的标签库 Action配置中一定要设置input返回页面 添加验证只要创建验证的xml文件 1.创建xml文件名 验证Action中全部方法 在Action同包下,创建: Action类名-validation.xml 如: ValidateAction创建ValidateAction-validation.xml 验证Action中单个方法 --每个方法单独配置一个Action--> --在Action同包下,创建: Action类名-action方法配置名称-validation.xml--> --要创建ValidateAction-validateAdd-validation.xml--> --使用通配符配置--> --在Action同包下,创建: Action类名-action方法对应的名称-validation.xml--> --要创建ValidateAction-validate_add-validation.xml,validate_add为访问这个action方法的路径--> 注意事项 注意: 1.要验证的方法不能叫input. 2.这样配置在form表单中要在 formaction="validate_add">中action写好名
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Struts2 总结