Eclipse 配置 Struts2

  今天为大家分享一下在Eclipse中配置Struts的方法和测试样例。

  首先我们创建一个Dynamic Web Project.将其命名为StrutsProject(随意命名)

  然后我们从网上可以下载到Structs的压缩包,然后解压,我们将WEB-INF/lib/目录下的所有jar包复制,粘贴到测试项目中WebContent/WEB-INF/lib/目录下

    

  然后我们在将刚才我们解压文件中的structs/WEB-INF/web.xml文件复制到Eclipse中的WEB-INF/目录下,打开web.xml并在web-app标签中添加如下标记

  

  <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>

  保存文件之后,再将解压目录下WEB-INF/src/java/struts.xml文件复制到Eclipse中的src目录下,如图所示

 

  

  打开struts.xml文件,将其中内容替换为

  

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
    <constant name="struts.devMode" value="false" /> 
     <package name="default" namespace="/" extends="struts-default">
        <action name = "result" class = "com.demo.ResultAction">
            <result>index.jsp
            </result>
        </action>
    </package>

</struts>

  其实现在就已经配置好了,不过后面还需要解释一下为什么这么配置,还有一个测试案例  

  在上面的struts.xml文件中,我们重写了action标签的属性和内容,action标签的name属性其实就是一个标记,class属性使我们要使用的类路径,其实还有一个method属性,标志着我们要用到这个类中的某个方法;

  result标签中的内容代表我们对哪个页面进行Filter,这里我们选择了根目录下的index.jsp,作为测试文件,我们在WEB-INF文件中直接新建JSP文件,命名为index.jsp即可,并在body标签内加入"<p>Hello World</p>"就行了。

  然后我们写一个类,这个类的类名必须使用大驼峰命名法,这里我们的测试类名设置为ResultAction,下面是这个类的代码

package com.demo;

import com.opensymphony.xwork2.Action;

public class ResultAction implements Action {

    @Override
    public String execute() throws Exception {
        // TODO Auto-generated method stub
        return SUCCESS;
    }

}

  我们在struts.xml文件中配置过来这个类,就是在action标签的class属性中配置的那个类,这里我们将测试类放到了com.demo包下。当客户端请求index.jsp页面的时候,就会先经过ResultAction,执行里面的execute方法(如果在struts.xml中配置了method属性后,将访问method属性中的方法)。并且ResultAction类必须实现Action接口

  然后我们打开index.jsp文件,就可以看见访问成功了

 

posted @ 2017-02-20 20:44  砂糖橘子君  阅读(269)  评论(0)    收藏  举报