Struts2号称是一个全新的 框架 ,但这仅仅是相对Struts 1而言。Struts 2 与Struts 1相比,有很多革命性的改进,Struts2是在另一个赫赫有名的框架: WebWork 基 础上发展起来的。从某种程度上来讲,Struts2没有继承Struts 1的血统,而是继承WebWork的血统。Struts2在稳定性、性能等各方面都有很好的保证:而且吸收了Struts 1和WebWork两者的优势,是一个非常值得期待的框架,基于历史原因,目前大部分的企业还在使用Struts1,但Struts2所占份额正在逐年扩 大,新的项目基本都会采用Struts2。
Struts2在使用上也变得异常地简单,下面介绍如何给项目添加Struts2支持并使用之:
首先给项目导入必要的jar:
struts2-core-2.1.6.jar
xword-2.1.1.jar
ognl-2.6.11.jar
其次在src下添加struts2的配置文件:struts.xml:
当然在web.xml中配置struts2过滤器是必不可少的:
OK了,项目添加Struts2支持完成。接下来用之:
创建登陆jsp页面:
页面头部要引入<%@ taglib prefix="s" uri="/struts-tags"%>
然后在struts.xml的<package/>标签中配置<action/>:
UserAction类[继承ActionSupport]中加入username、password属性(提供get、set方法),并编写输入校验方法validateLogin()及业务方法login():
当程序执行到Action类时,会先进行Struts2的类型转换阶段,即将页面的name属性值绑定到Action类的属性上,(此处为private String username、private String password);
然后调用业务逻辑方法(此处为login())所对应的验证方法(此处为validateLogin())进入Struts2的校验阶段;
输入校验通过后再派遣调用业务逻辑方法(即login())进入Struts2的业务处理阶段,并返回相应的视图;
=========================================================
至此,完成了给项目添加Struts2支持并简单了进行了使用演示。
备注:实际开发中因业务庞大,为了便于维护和管理,一般将Struts2配置拆分为多个,并分别在总配置文件中引入子配置文件。
关于Struts2的类型转换及输入校验的更多信息请参考本类型的“Struts2类型转换”及“Struts2输入校验”,另外还有“Struts2核心拦截器”...