基于Struts2框架技术在WEB项目中的应用
2014-07-18王昊
王昊
(东北农业大学成栋学院,黑龙江哈尔滨150030)
Struts2是一款扩展性很强的框架,它是由Strut开发团队和WebWork团队合作,共同开发的一个新的产品,新版本的Struts2更加容易使用,更加接近Struts2所追求的理念。从开发、部署到维护中效率的提高。
1.Struts2的优势
Struts2以WebWork优秀的设计思想为核心,吸收了Struts1的部分优点,建立了一个兼容WebWork和Struts1的MVC框架。在使用上与Struts1有着很大的不同,更接近WebWork的使用习惯,因为Struts2使用了WebWork的设计核心而不是Struts1的设计核心。Struts1与WebWork的优势互补使得Struts2拥有着更加广阔的前景。不仅Struts2自身更加强大,还对其他框架下开发的程序提供了很好的兼容性。
2.Struts2在WEB项目中应用
新建JAVA WEB项目,选择Struts2资源中lib下的jar文件,添加到项目,并在项目的“JAVA构建路径”中添加引用。
在项目中添加Struts2的支持后,就可以使用Struts2框架开发WEB应用程序了。
实现过程如下:
第一步,创建login.jsp页面,主要内容如下:
用户名:
密  码:
第二步,创建LoginAction类。用于对用户的请求做出处理,对于开发人员使用Struts2框架,主要是的编码工作就是编写处理请求的Action类,Action类通常都实现com.opensymphony.xwork.Action接口,并实现该接口中的execute()方法,Struts2中,所有的Action必须返回一个字符串类型的结果代码。
import com.opensymphony.xwork2.Action;
public class LoginAction implements Action{
private String username;//产生其get/set系列方法private Stringpassword;//产生其get/set系列方法public String execute()throws Exception{
return"success";
}
}
在Struts2中,可以直接使用Action类中的username属性来接收用户的输入,通过Struts2的数据绑定机制,传递username请求参数,其实等同于调用LoginAction的setUserName方法。
第三步,修改项目的配置文件web.xml,将全部请求定位到指定的Struts2过渡器中。
第四步,创建Struts2的配置文件,在src目录下创建Struts.xml文件。
在Struts2配置文件中,package元素用于定义Struts2处理请求的逻辑单元,name属性为必需的并且唯一,用来指定包的名称;ex⁃tends属性类似Java的extends关键字,用于指定要扩展的包。ac⁃tion元素用于配置Struts2框架的“工作单元”Action类,action元素将一个请求的URl(action的名字)对应到一个Action类,name属性是必须的,用来表示action的名字,class属性可选用于设定Action类的全限定名。Result元素用来设定Action类处理结束后,系统下一步将要做什么,name属性表示result的逻辑名,用于与Action类返回的字符串进行匹配,result元素的值用来指定这个结果对应的实际资源的位置。
最后一步,编译部署并启动服务器,访问login.jsp页面。
至此,已经基于Struts2的应用程序的实现。
3.Struts2应用小结
Struts2应用的执行流程为:浏览器发出login.action请求至服务器,Tomcat接收后,根据web.xml的配置,将请求发送给指定的Struts2过滤器,该过滤器根据struts.xml的配置内容,将请求发送给LoginAction类的对象,并调用默认的execute方法。然后根据execute方法的返回,匹配到login的结果,完成向login.jsp页面的跳转。页面根据上下文中的内容,进行页面的处理及显示。