• struts2 使用装饰页面 /decorators


    此为一个非常简单的例子

    在web工程的web.xml 的文件进行配置

       <!--用来消除sitemesh 拦截器 Struts2拦截器的冲突 使之兼容-->      
    <filter>  
        <filter-name>struts-cleanup</filter-name>  
        <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>  
    </filter>  
      
    <filter>  
        <filter-name>sitemesh</filter-name>  
        <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>  
    </filter>  
          
    <filter>  
        <filter-name>struts2</filter-name>  
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  
    </filter>  
      
    <filter-mapping>  
        <filter-name>struts-cleanup</filter-name>  
        <url-pattern>/*</url-pattern>  
    </filter-mapping>  
      
    <filter-mapping>  
        <filter-name>sitemesh</filter-name>  
        <url-pattern>/*</url-pattern>  
    </filter-mapping>  
      
    <filter-mapping>  
        <filter-name>struts2</filter-name>  
        <url-pattern>/*</url-pattern>  
    </filter-mapping>  

    此配置默认的index.jsp 页面不会使用装饰页面,若将红色的去掉将会使index.jsp页面使用装饰页面

    配置完web.xml页面之后,在web.xml的同层目录下建立一个decorators.xml文件,用于配置

    <?xml version="1.0" encoding="utf-8"?>  
    
    <decorators defaultdir="/decorators">   //装饰的页面所在的文件目录
    
     
         
        <decorator name="main" page="main.jsp">  
            <pattern>/*</pattern>    //对何种action响应进行装饰 ,此为对所有的action进行装饰。可以对特定的页面进行特定的装饰
        </decorator>  
        
    </decorators>  

    然后在WebContent目录下的decorators新建main.jsp装饰页面

    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>  
    <%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator"%>  
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
    <html lang="zh-cn">
        <head>  
            <meta charset="utf-8">
            <meta http-equiv="X-UA-Compatible" content="IE=edge">
            <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
            
        
            <title><decorator:title default="U 社区"/></title>
              
            <%-- 从被装饰页面获取head标签内容 --%>  
            <decorator:head/>  
    
     
            
        </head>  
      
        <body>  
            <%-- 从被装饰页面获取body标签内容 --%>  
            <decorator:body />
            
            this is decorator page.
        </body>  
    </html>  

    装饰页面可以将一些css,js等资源引入,或者一些公共的属性操作。

    此工程需要导入相关的struts2的开发包

    源码地址:http://pan.baidu.com/s/1i39Ws2T
  • 相关阅读:
    【JavaWeb】MVC案例之新闻列表
    PayPal高级工程总监:读完这100篇论文 就能成大数据高手(附论文下载)
    自己动手搭建搜索工具
    某学院软件工程复试回忆总结
    【NLP】Tika 文本预处理:抽取各种格式文件内容
    OpenNLP:驾驭文本,分词那些事
    【类库】私房干货.Net数据层方法的封装
    Oracle手边常用70则脚本知识汇总
    Oracle手边常用命令及操作语句
    快速了解什么是自然语言处理
  • 原文地址:https://www.cnblogs.com/songyao/p/4171717.html
Copyright © 2020-2023  润新知