主要作用:将请求与页面区分开

 

配  置:

    下载struts 2.0,在安装路径D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps 中解压struts2-blank.war

    将目录D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps\struts2-blank\WEB-INF\lib下的所有jar包复制到WebRoot->WEB-INF->lib中

 

显示提示:(按下Ctrl+/)

    在目录D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\lib下解压struts2-core-2.3.24.jar

    在myeclipse中如下配置:(location为解压后struts2-core-2.3.24中struts-2.3.dtd)

    

 

web.xml的配置:

    在目录D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps\struts2-blank\WEB-INF下打开web.xml,复制其中

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

    粘贴到myeclipse的web.xml </web-app>的上方

 

struts.xml的配置:

    在解压完的文件夹内找到struts.xml,路径为D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps\struts2-blank\WEB-INF\src\java

    将struts.xml复制进web project的src目录下,将其struts中的内容全部注释,然后再改写其中内容

 

struts.xml的改写:    

    <struts></struts>中的内容:

        <constant name="struts.devMode" value="true" />
        <package name="default" namespace="/" extends="struts-default">
        <action name="hello" class="..." method="...">
        <result name="SUCCESS">
        /Hello.jsp
        </result>
        </action>
        </package>

    ①namespce即为访问的action前面的地址,访问此页面网址为http://localhost:8080/struts2/hello(.action),等价于http://localhost:8080/struts2/Hello.jsp

       namespace默认为"",即action前面无论加什么都可以访问

    ②一般packagename与namespace相同,方便区分,例:<package name="hello" namespace="/hello" extends="struts-default">

     此时访问的页面为http://localhost:8080/struts2/hello/hello.action

    ③ 在<action name="user" class="com.struts2.add.AddAction" method="add">中,class是调用com.struts2.add包中的AddAction.java,method是调用的方法

        method也可以不用写,即动态方法调用(DMI)

 

src中的java程序:

    要继承ActtionSupport类,实现返回值为String的方法:

        public String add(){
            return SUCCESS;
        }

 

传值:

    在调用的方法中写:

    public class AddAction extends ActionSupport {
      private String msg;
      public String getMsg() {      
          return msg;
      }
      public void setMsg(String msg) {
          this.msg = msg;
      }
      public String execute(){
          msg="what are you 弄啥嘞?";
          return SUCCESS;
      }
    在jsp页面写:

    ${msg}

posted on 2015-08-03 16:27  小学森也要学编程  阅读(202)  评论(0编辑  收藏  举报