Struts2学习笔记
来源:互联网 发布:北京淘宝城地址在哪里 编辑:程序博客网 时间:2024/06/16 15:57
struts2 核心是拦截器
1.配置首先加入相应的jar包。
2.配置 web.xml增加以下
<filter> <filter-name>struts2</filter-name> <filter-class> <!-- struts2的拦截控制中心 --> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <!-- struts2的拦截后缀 --> <url-pattern>*.action</url-pattern> </filter-mapping>
3.在src目录当中增加struts.xml
struts.xml配置是以package位单位的
package
name–名字
namespace–工作空间(命名空间)
extends–继承与哪个包
abstract–加入这个属性之后这个包可以被继承
package底下的标签action name--请求名 method--处理的方法名,默认execute class--哪一个类处理result name--返回的名字默认("success" ) type--返回类型默认("dispatcher"--转发)
前端aciton可以通过 名字!方法 来调用
struts2 常量配置
struts2为了团队开发分工更明确他加入namespace的机制还有多配置文件引入方式
约定Action包名:
要求Action必须放到action、actions、struts、struts2包中。例如:cn.itcast.action、cn.itcast.sturts、cn.itcast.action.user等等。可以使用下面常量来修改Actoin的包
struts2引用标签
<%@taglib uri=”/struts-tags” prefix=”s”%>
//1.取得servletAPI的session: ServletActionContext.getRequest().getSession()
//ActionContext=值栈的#
//2.通过ActionContext取得的session的代理map
//3.取得servlet API的第三种方式:实现ServletRequestAware接口,有struts2系统自动注入
i18n–国际化
1)引用常量:struts.custom.i18n.resources=globalMessages
2)配置globalMessages_en_US.properties 国际化资源文件
3)在页面上用标签
struts2 返回类型
dispatcher – forward view(默认的返回类型)
chain – forward Action
redirect – 重定向view
redirectAction –重定向Action
struts2 的自定义返回类型
1)创建一个java类继承ServletRedirectResult,重写doExecute方法
2)在Struts.xml声明自定义的返回类型
struts2 返回json数据
1)首先包要继承json-default
2)并且返回类型 声明为 json(struts2 默认的会把有getter方法属性转换成Json)
struts2 拦截器
1)继承AbstractInterceptor
2)重写intercept()方法 (// 拦截通过 arg0.invoke();)
3)配置struts.xml
<!-- 声明拦截器 --><interceptor name="myItcep" class="com.j150914.Interceptor.MyItcep" /><!-- 自定义的拦截器栈 --><interceptor-stack name="myItcepStack"> <interceptor-ref name="token" /> <interceptor-ref name="defaultStack" /> <!-- 默认拦截器栈 --> <interceptor-ref name="myItcep" /></interceptor-stack>
前提:前端form表单, 请求方式post, enctype=”multipart/form-data”
struts2 上传
1)Action类要有file类型的setter getter方法
2)上传的方法只要简单的做标准io流操作
原理:struts2拦截器已经把上传的文件存到临时文件当中,然后我们方法只要做一个复制到我们的上传路径就好了。
- struts2学习笔记--struts2配置
- Struts2学习笔记--安装struts2
- struts2.01学习笔记
- struts2学习笔记
- Struts2学习笔记1
- struts2.0 学习笔记
- struts2.01学习笔记!
- struts2学习笔记
- Struts2学习笔记1
- struts2 学习笔记
- Struts2学习笔记(1)
- struts2学习笔记(2)
- struts2学习笔记(3)
- Struts2学习笔记
- struts2学习笔记
- struts2学习笔记2
- Struts2学习笔记
- struts2学习笔记(一)
- java mysql 表中字段是tinyint(1)类型,hibernate自动生成bean对应属性为boolean类型,如何传值
- python 掌握之路(二)
- Trie树详解及其应用
- Node.js
- 周易六十四卦—师卦
- Struts2学习笔记
- 5636963
- 字面值表示
- HDU 1203 I NEED A OFFER! (01DP)
- [leetCode]Majority Element
- 一个轻量级 Python 装饰器的缓存库——wrapcache
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- Java类锁和对象锁实践
- 1012. 数字分类 (20)