struts2最基本使用

2017-11-08  本文已影响2人  吐痰高手

1.IDE新建项目,导包

以上应该是最基本的几个包了

2. web.xml文件

//就是这个层级
<web-app>
  <!-- 固定写法 -->
  <filter>
    <filter-name>struts2</filter-name>
    <!-- 这个类可能会根据版本的不同有所不同 -->
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

3. Action类

public class HelloWorldAction extends ActionSupport {
    @Override
    public String execute() throws Exception {
        System.out.println("执行action");
        //return的值是有用的,下文讲
        return "123"; 
    }
}

4. struts.xml文件

src根目录新建一个文件struts.xml

<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
    "http://struts.apache.org/dtds/struts-2.5.dtd">
//xml文件的命名约束
    
<struts>//必须
    //package标签是用来管理映射的url的,和SpringMVC中类级别的@RequestMapping注解类似
    //namespace就是映射的主要url,类似于SpringMVC中类级别的@RequestMapping注解指定的值
    //名字随便起
    <package name="default" namespace="/" extends="struts-default">
        //action标签和SpringMVC中标识了@RequestMapping的方法类似
        //name即等同于@RequestMapping中的url
        //最终如果客户端访问到这个url,会调转到class中所指的类中,执行execute()方法
        <action name="helloworld" class="com.zyj.struts.HelloWorldAction">
            //如果execute()方法执行的返回结果是"123"就跳转到result标签中的MyJsp.jsp文件
            <result name="123" >/WEB-INF/MyJsp.jsp</result>
            //如果execute()方法执行的返回结果是一个常量SUCCESS,则会匹配到这个没有指定name的result中
            <result >/index.jsp</result>
        </action>
    </package> 
</struts>

此例中,当输入Url为:http://localhost:8080/项目名称/hellowworld之后会自动跳转到这个action中执行,

如果输入http://localhost:8080/项目名称/hellowworld.action也是可以的

5.创建JSP文件

6.注意点

上一篇 下一篇

猜你喜欢

热点阅读