本文是Struts2的入门级操作,目的是为了介绍Struts2的应用流程。

在一个Web项目中,如果需要使用Struts2,那么我们就需要遵循Struts2的应用流程来进行部署。

一、首先,创建一个Web应用程序(或者是使用已有的项目);

二、将Struts2所必须的jar文件导入到项目的WEB-INF文件夹下,通常有

        commons-fileupload-1.2.1.jar,

        commons-io-1.3.2.jar,

        freemarker-2.3.16.jar,

        ognl-3.0.jar,

        struts2-core-2.2.1.jar,

        xwork-core-2.2.1.jar

        五个必须的jar文件,如果你的项目中需要其他的jar文件,则视情况而定;

三、创建Action类,编写你所需要的处理用户请求的java文件,该类通常继承ActionSupport。

示例:

public class LoginAction extends ActionSupport{
 private String name;
 private String password;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public String getPassword() {
  return password;
 }
 public void setPassword(String password) {
  this.password = password;
 }
 
 @Override
 public String execute() throws Exception {
  if(getName().endsWith("admin")&&getPassword().endsWith("password")){
   ActionContext.getContext().getSession().put("user",getName());
   return SUCCESS;
  }else{
   return ERROR;
  }
 }
 
}

四、配置struts.xml文件(在Web应用的类加载路径下,IDE环境中置于src路径下即可)

示例:

<struts>
 <package name="Struts" extends="struts-default">
  <action name="login" class="com.java.struts.LoginAction">
   <!-- 定义三个逻辑视图和物理资源之间的映射 -->  
   <result name="input">/login.jsp</result>
   <result name="error">/error.jsp</result>
   <result name="success">/welcome.jsp</result>
  </action>
 </package>
</struts>

五、配置web.xml文件(置于WebContent/WEB-INF路径下)

示例:

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">

 <filter>
  <filter-name>struts2</filter-name>
  <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 <welcome-file-list>
 <welcome-file>/login.jsp</welcome-file>
 </welcome-file-list>
</web-app>

这样一个Struts2的应用已经搭建完毕,在服务器上运行,即可。