首页 > 代码库 > 框架2--Struts2

框架2--Struts2

Struts1.x

  Apache项目的一个子项目

  2001年出现Struts1,成为第一个MVC框架

  2004年成为Apache软件基金会的顶级项目

Struts2.x

  在Struts1.x和webwork的基础上进行合并

  但是struts2和struts1的差异很大,却和webwork几乎相同,级就是说struts2是webwork的更新产品

 

创建一个struts2项目需要将一下jar文件添加到lib目录下

技术分享

 

添加struts2核心过滤器的配置

<filter>

  <filter-name>struts2</fiter-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-mappping>

 

 

编写一个JSP页面

<body>

  <form action="hellowworld.action"  method="post">

    <lable>姓名:</lable>

    <input type="text" name="name" placeholder="请输入姓名">

    <button type="submit">提交</button>

  </form>

</body>

 在写一个Action,且为其定义一个成员变量name,提供get 、set 方法以及execute方法

public class  HelloWorldAction{

  private String name;

  public String execute(){

    if(name!=null&&!name.isEmpty()){

      return "success";

    }

    return "failtrue";

  }

}

配置Action,在 src 目录中创建struts.xml中

<package name="helloworld" namespace="/helloworld" extends="struts-default">

  <action name="helloworld" class="com.zhidisoft.action.HelloWorldAction">

    <result>/success.jsp</result>

    <result name="failtrue">/failtrue.jsp</result>

  </action>

</package>

 

核心过滤器

  在struts2.1.2之前的核心过滤器为:

    org.apache.struts2.dispatcher.FilterDispatcher

  在struts2.1.3之后核心过滤器被建议改为:

    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

  StrutsPrepareAndExecuteFilter功能解析

    1.过滤用户请求

    2.初始化请求处理环境

    3.创建Action,调用Action的execute方法

    4.根据execute方法返回结果,将请求发给相应的结果界面

业务逻辑控制器Action

  Struts2中,StrutsPrepareAndExecuteFilter作为核心控制器,统一接受

 

框架2--Struts2