Struts2技术总结
?
必备jar文件早在struts2.0.*的时候,struts2的必备jar包需要如下几个:
commons-logging-*.jar?? Apache旗下commons项目的log日志包
freemarker-*.jar?????????????一种前台页面模板,应用比较广泛
ognl-*.jar??????????????????????? 动态图导航语言,struts2处理前台页面的核心语言,相当实用
struts2-core-*.jar???????????struts2的核心包
xwork-core-*.jar?????????????webwork的核心包,因为struts2的前身是webwork,所以这个是必须的
只要满足这5个基本jar包就可以运行一个struts2的hello world
(注:*表示版本号,struts2不同版本,使用的jar包版本也可能不一样。)
?
但是后面版本,比如struts-2.1.8.1,必须再添加一个新jar包才能运行,不然启动就会报错:
commons-fileupload-1.2.1.jar?? 支持文件上传的jar包
?
?
web.xml文件配置在web.xml需要配置struts2滤镜,即当jsp向后台发送请求时需要经过struts2拦截分析处理,需要注意的是struts2与struts1和spring mvc的拦截机制不同,它是通过一个filter拦截的。filter拦截器的类除了下面这个类以外,也可以引用“org.apache.struts2.dispatcher.FilterDispatcher”。注意filter-mapping配置的url-pattern即拦截所有的请求,如果写成/*.action就只能拦截以.action结尾的请求。<init-param>标签中的config指定struts2初始核心文件路径,struts.xml是最核心文件?
获取Servlet内置对象基于java web开发,我们经常会使用到servlet的内置对象:request、session、application等,通过struts2框架获取内置对象有四种方式:(1)通过ActionContext来获得,获取的对象是不基于Servlet容器的;(2)通过ServletActionContext获得,获取的对象是Servlet内置对象?
?【User.java】
?
下面这个是早前自己写的Struts2标签库的例子,内容肯定不全:
?拦截器struts2的核心内容是拦截器,拦截器的作用简单理解就是:在JSP向后台发送请求,访问某个方法之前或之后会运行拦截器处理一些特殊操作,比如异常拦截器,当运行后台某方法发生异常时会被拦截器截获并进行一些特殊处理:自定义一个拦截器非常简单:首先继承AbstractInterceptor类,实现intercept(ActionInvocation actioninvocation)方法即可: 2 楼 hwh0919 2011-09-30 hi,后台你怎么验证呢!若用 actionName-validate.xml这个做法,action里都得列字段啊!有没有没后台可能对 对象的每个属性都验证的方法呢 3 楼 白糖_ 2011-10-03 hwh0919 写道hi,后台你怎么验证呢!若用 actionName-validate.xml这个做法,action里都得列字段啊!有没有没后台可能对 对象的每个属性都验证的方法呢
你提出的疑问“action里都得列字段”我不明白什么意思,但是我可以确认的是stuts2验证框架可以验证每个对象的每个属性。
我写了篇struts2验证框架的文章,你可以参考一下:http://blessht.iteye.com/blog/979645