zoukankan      html  css  js  c++  java
  • Struts2六、为应用指定多个配置文件

    为了使用Struts.xml更简洁,更利于维护,我们可以把Struts.xml要配置的Action信息分类别放在其他的XML文件中,使用include在struts.xml中加载这些文件;

    将Web.xml中的filter-mapping拦截设置为拦截所有url:

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


    首先是struts.xml

    <struts>
    	<constant name="struts.action.extension" value="do"></constant>
    	<constant name="struts.118n.encoding" value="UTF-8"></constant> 
    	<include file="employee.xml"></include>
    	<include file="user.xml"></include>
    </struts>    
    

    然后分别配置这两个xml文件:

    <struts>
    	<package name="employeePackage" namespace="/col/employee" extends="struts-default" >
    		<action name="employee_*" class="cn.actions.EmployeeAction" method="{1}" >
    			<param name="message">员工</param>
    			<result name="message">/WEB-INF/pages/message.jsp</result>
    		</action>
    	</package>
    </struts>    
    

    <struts>
    	<package name="userPackage" namespace="/col/user" extends="struts-default" >
    		<action name="user_*" class="cn.actions.UserAction" method="{1}" >
    			<param name="message">用户</param>
    			<result name="message">/WEB-INF/pages/message.jsp</result>
    		</action>
    	</package>
    </struts>    
    


    然后配置Action,两个Action的内容是相同的:

    public class EmployeeAction {
    
    	private String message;
    
    	public String getMessage() {
    		return message;
    	}
    
    	public void setMessage(String message) {
    		this.message = message;
    	}
    	
    	public String view(){
    		return "message";
    	}
    }
    


    Message.jsp页面:

    <body>
        	${message }
      </body>


    访问地址:

    http://localhost:9000/Struts21/col/user/user_view.do

    http://localhost:9000/Struts21/col/employee/employee_view.do

  • 相关阅读:
    redhat Nginx 安装
    黑客经验谈:跳板攻击入侵技术实例解析
    Linux各版本的本地root密码破解方法
    python学习笔记
    Git 提交的正确姿势:Commit message 编写指南
    数论 + 扩展欧几里得
    数论
    flutter 延时函数delay Loading页面
    flutter 切换tab后保留tab状态
    iOS 应用"无法安装应用程序 因为证书无效"的解决方案
  • 原文地址:https://www.cnblogs.com/raphael5200/p/5114796.html
Copyright © 2011-2022 走看看