zoukankan      html  css  js  c++  java
  • decorator 装饰器模板 详解

    要使用decorator标签需要下载sitemesh.jar包.
    decorator标签可以轻松解决页面布局的问题,轻松是因为相比<include>标签(需要在每个页面都用他引入JSP)而 言,decorator标签的使用很简便,只需要在配置文件decorators.xml进行相应的配置再加上一个装饰器(其实就是一个JSP页面)即 可.


    加上强大的过滤器,你可以装饰何一个被打开的页面,而不用像以前一样加工每一个JSP页面。


    装饰器例子:

    <excludes>

      <pattern>/Login*</pattern>

     </excludes>


    可以定义JSP页面,也可以定义为URL请求!


    <decorator name=“pop" page=“PopPage.jsp">
     
            <pattern>/showinfo.jsp*</pattern>
     
            <pattern>
     
                  /myModule/GreatWallDetailAction.do*
              
    </pattern>
     
        </decorator>
    <excludes> 标签代表不对定义的请求名进行装饰
    <decorator> 标签代表对定义的请求名进行相应的装饰




    详细:decorators.XML


    <!-- defaultdir指定装饰器文件所在的路径 -->
    <decorators defaultdir="/decorators">
        <!-- 在excludes元素下指定的页面将不会由SiteMesh装饰 -->
        <excludes>
            <pattern>/login.jsp</pattern>
            <pattern>/sessionTimeout.jsp</pattern>    
            <pattern>/*.action*</pattern>
            <pattern>/pages/getMenu.jsp</pattern>     
    
        </excludes>
        
        <!-- 创建名为main的装饰器,装饰器页面为main.jsp,用于装饰pattern指定的URL页面 -->
        <decorator name="main" page="main.jsp">   
            <pattern>/*</pattern>
            
            
        </decorator>
        
        <!-- 定义一个装饰器,该装饰器默认不装饰任何页面 -->
    <!--    <decorator name="panel" page="panel.jsp"/>-->




    main.JSP:


    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator"%>
    <%@ taglib uri="http://www.opensymphony.com/sitemesh/page" prefix="page"%>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
    	<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    	<title></title>
    
      </head>
      <body>
    	<div id="mainContainer-back">
    	  <!-- header -->
    	  <%@include file="/common/backHeader.jsp"%>
    	  <!-- leftBar -->
     
    	  <div id="mainContent-back">
    		<div class="content">
    		  <decorator:body/>
    		</div>
    	  </div>
    	  <!-- footer -->
    	  <%@include file="/common/backFooter.jsp"%>
    	</div>
      </body>
    </html>


  • 相关阅读:
    WPF应用
    web窗体的运用
    关于计算器的封装
    典型用户、用户故事
    第五次作业
    第四次作业
    四则运算
    git 认识
    First article
    TODO
  • 原文地址:https://www.cnblogs.com/xiaowangba/p/6314466.html
Copyright © 2011-2022 走看看