struts2 框架 的环境搭建 与配置

一,Struts2简介:

       1,来由:Struts(金属支架),在程序中表示起支撑作用的通用程序代码,Struts2是在Struts1框架的基础上融合了WebWork优秀框架升级得到的。

       2,解释:Struts2框架是一个轻量级的MVC流程框架,轻量级是指程序的代码不是很多,运行时占用的资源不是很多,MVC流程框架就是说它是支持分层开发,控制数据的流程,从哪里来,到那里去,怎么来,怎么去的这样一个框架;

 

二、环境搭建

  1, 导入jar包

  2导入web.xml文件,改配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <display-name>Struts Blank</display-name>

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

  3.建一个类,继承com.opensymphony.xwork2.ActionSupport    在该类中,重写execute()方法   传值,用成员变量来写,生成get set

  4.导入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.enable.DynamicMethodInvocation" value="false" />        <!-- value改成true时,可以调用动态方法   IndexAction中的add方法   页面传值时加  !add  来调用add的方法  -->
    <constant name="struts.devMode" value="true" />        <!--开发时,value为true,开发完成,改成false, 提升运行效率  -->
  <constant name="struts.i18n.encoding" value="UTF-8"></constant>  <!-- 乱码处理  -->
    <package name="default" namespace="/" extends="struts-default">
      
        <action name="index" class="com.maya.kongzhi.IndexAction">         <!-- name="index"  这里是需要提交到哪里,相当于servlet中的那个地址,这里是建的那个class的地址 -->
            <result name="Index_add">                                         <!-- 返回的值不同,决定着会跳转至哪个页面到哪个页面 -->
               Index_add.jsp
            </result>
            
            <result name="Index_update">                                        
               Index_update.jsp
            </result>
            <result>
                Index.jsp
            </result>
        </action>
        
        <!-- 调用 IndexAction中的add方法    加一个 method   即可-->
      <!--    <action name="index_add" class="com.maya.kongzhi.IndexAction" method="add">
             <result>
             index_add.jsp
             </result>         
          </action> -->
        
        
        
            <!-- 通配符 -->
       <!--    <action name="*_*" class="com.itnba.maya.controller.{1}Action" method="{2}">
            <result>    
                {1}_{2}.jsp
            </result>
        </action> -->

    </package>

  

</struts>

struts.xml中每个action的result的type类型:
1.dispatcher--转发到页面
2.chain--转发到action
3.redirect-重定向到页面
4.redirectAction - 重定向到action  (如果忘了,去struts2-core-xxx.jar中找struts-default.xml)

原文地址:https://www.cnblogs.com/zhaotiancheng/p/6545360.html