1 全局跳转视图配置 <global-results> <result name=" "></result></global-results> 需要注意顺序
2 配置各项默认值 name 配置路径名称 class 默认执行的action 在struts-default<default -class-ref class="com.opensymphony.xwork2.ActionSupport>中有配置 method 有默认的方法
3 redirect 不能直接跳转到WEB-INF中的jsp页面中 ,因安全泄露等问题。
4当只需要跳转到WEB-INF资源下的时候 action 不用配置class及method方法 result 不用配置type
5 servlet中 数据处理(将数据保存到域中) 1请求数据封装 2调用service处理业务逻辑,拿到结果数据 3 数据保存到域中
struts中对数据操作 (将数据保存到域中)方式一 通过 ServletActionContext提供的静态方法直接拿到servletApi(但是需要 import servletApi)但是可以通过得到的 request,application ,session ,pagecontext获得需要的方法来执行操作 方式二 通过ActionContext类 (解耦的方式) 方式三 通过实现接口的方法,实现requestAware,sessionAware, ApplicationAware接口(解耦的方式),struts 运行的时候 会把代表request的map对象注入
6.学习了解耦及耦合的概念
7 请求数据封装及类型转换
JSP表单数据填充到action中的属性或者填充到action的对象中的属性 对于对象类型的封装需要给get方法不给get方法会出现bug(struts2.3)
实现原理用了params拦截器
struts 中 jsp提交的数据,struts 会自动转换为action中属性的转换,对于基本数据类型及日期类型会自动转换,但是日期只支持yyyy-
如何自定义类型转换器 继承 strutsTypeConverter重写convertfromString(simpleDataFormat方法)及converttoString方法 然后在同包的Action目录下,新建一个 properties 命名规则为 ActionClassName-convertion.properties 内容为 当前需要转换的属性= 转换器包+转换器类(此为局部类型转换器)
(全局类型转换器) 需要写一个转换器给所有的action用 配置与局部的不同 配置 src/xworkconvertion.properties 内容为 java.util.Date = 转换器包+转换器类
优先级为 先局部 再全局
8 struts的文件文件上传 action的名称不能用fileupload 因可能Struts内部有用fileupload做关键字会有问题!
文件上传拦截器fileupload interceptor帮助我们完成了文件的上传功能
另:MIME
浙公网安备 33010602011771号