WEB Struts2 构建struts2框架

配置struts2的最小空项目的方法:

  1. 引入包结构:
    commons-logging-1.0.4.jar freemarker-2.3.16.jar ongnl-3.0.jar struts2-core-2.2.1.jar xwork-core-2.2.1.jar 从Struts2.1.6开始要再引入两个包类: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar
    这里注意:
    在使用struts-2.2.1时,需要引入javassist-3.7.ga.jar,而这个在struts-2.2.1/lib下是没有的,需要在struts-2.2.1/apps/struts2-blank-2.2.1.war下的lib中找
  2. 建立项目,在web.xml文件下建立:
    <?xml version="1.0" encoding="GBK"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <!--定义struts 2的FileterDispatcher的Filter--> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</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>

    web.xml的filter配置得很不规范。。。不建议使用org.apache.struts2.dispatcher.FilterDispatcher了,
    官方文档建议使用org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

  3. 在src下或是WEB-INF/classes下建立struts.xml文件,内容为:
    <?xml version="1.0" encoding="GBK"?> <!-- 指定Struts 2配置文件的DTD信息 --> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <!-- struts是Struts 2配置文件的根原属 --> <struts> <!-- Struts 2的Action必须放在指定的包空间下定义 --> <package name="com.exercise.action" extends="struts-default"> <!-- 定义login的Action,该Action的实现类为com.exercise.action类 --> <action name="Login" class="com.exercise.action.LoginAction"> <!-- 定义处理结果和资源之间映射关系。 --> <result name="input">/Login.jsp</result> <result name="error">/error.jsp</result> <result name="success">/welcome.jsp</result> </action> </package> </struts>
    注意:
    struts2中有个默认的struts-default.xml的配置文件,在src即web-info/classes目录下,所以如果想要把struts.xml文件放到别的路径下也可以,不过要在web.xml文件中标注,
    <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> <init-param> <param-name>config</param-name> <param-value>struts-default.xml,struts-plugin.xml,../struts.xml</param-value> </init-param> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
  4. 建立对应的action类:
    package johnson.action; public class loginAction{ private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } //处理用户请求 public String execute() throws Exception{ //账号,密码:scott/tiger时,返回success //否则返回error if(getUsername().equals("scott") && getPassword().equals("tiger")) { return "success"; } else { return "error"; } } }

这样就可以启动项目了

 

 

你可能感兴趣的:(Web,struts,String,filter,action,encoding)