一、简介

SiteMesh是一个网页布局和修饰的框架,利用它可以将网页的内容和页面结构分离,以达到页面结构共享的目的。
它能通过创建一个包装对象,也就是装饰来包裹的对象。尽管它是由Java语言来实现的,但是它能与其他Web应用很好的集成。

二、使用步骤

1、下载sitemesh jar包

jar包下载官网:http://wiki.sitemesh.org/wiki/display/sitemesh/Home

2、把sitemesh jar 导入项目中

创建decorators.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!-- defaultdir 是模板所在的文件夹路径 -->
<decorators defaultdir="/layouts"><!-- 下面是过滤css和js文件,按实际情况写 --><excludes><pattern>/assets/*</pattern></excludes><!-- /* 所有页面,按模板 phone_template.jsp 来修饰 --><decorator name="phone" page="phone_template.jsp"><pattern>/*</pattern></decorator></decorators>

web.xml文件配置

    <!-- 定义过滤器--><filter><!-- 定义过滤器的实现类 --><filter-name>sitemesh</filter-name><filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class></filter><!--  定义过滤器拦截URL地址 --><filter-mapping><!-- 过滤器的名称 --><filter-name>sitemesh</filter-name><!-- 过滤器负责拦截的URL,如下定义会拦截所有  --><url-pattern>/*</url-pattern></filter-mapping>

模板(phone_template.jsp):

<%@ taglib prefix="sitemesh" uri="http://www.opensymphony.com/sitemesh/decorator" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!doctype html>
<html lang="en">
<head><!--  sitemesh:title 的作用是,将要修饰的页面的title引入 --><title><sitemesh:title/></title><!-- 不用在意下面的样式引入  --><link href="/js_css/css/bootstrap.css" rel="stylesheet"><link href="/js_css/css/offcanvas.css" rel="stylesheet">
</head><body class="bg-light"><%@include file="phone_head_nva.jsp"%><%@include file="phone_body_nva.jsp"%><main role="main" class="container"><!--  这里会把要修饰的页面的body部分引入 --><sitemesh:body></sitemesh:body></main><%@include file="phone_footer.jsp"%></body>
</html>

总之,定义模板的作用是,让指定的网页用模板修饰,比如模板的上面有一个导航栏,则被模板修饰的网页都有导航栏。

转载于:https://www.cnblogs.com/ldl326308/p/9509339.html

sitemesh 使用方法相关推荐

  1. 在 Oracle Enterprise Linux 和 iSCSI 上构建您自己的 Oracle RAC 11g 集群

    作者:Jeffrey Hunter 了解如何以低于 2,700 美元的费用在 Oracle Enterprise Linux 上安装并配置 Oracle RAC 11g 第 2 版开发集群. 本指南中 ...

  2. Java面试题大全2021版

    一.Java 基础 JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境. JRE:Java Run ...

  3. struts2 集成webservice 的方法

    由于项目需求的需要,要在原来用Struts2的框架之上集成webservice,因为之前单单做webservice的时候没有多大问题,使用 Spring 和 Xfire就可以轻松地发布服务,但是,当和 ...

  4. SiteMesh参考

    SiteMesh参考 作者:kongxx (kongxx@gmail.com) 安装 首先从sitemesh下载安装包,这里使用的是2.2.1版本. 创建一个Web应用程序,这里我创建一个名为myap ...

  5. SiteMesh学习入门

    http://www.java3z.com/cwbwebhome/article/article2/2962.html?id=1668 demo下载 简介:     sitemesh应用Decorat ...

  6. Cannot load excludes configuration file /WEB-INF/decorators.xml as specified in sitemesh.xml or

    今天启动公司的一个旧项目时,控制台报出错误: Cannot load excludes configuration file "/WEB-INF/decorators.xml" a ...

  7. sitemesh的使用---修饰器

    假设你打算结合多种技术来构建一个企业级web站点.比如,你准备采用J2EE技术往你的web站点里添加新内容,而这个系统的其他部分是用CGI或者微软的IIS Server搭建的. 在 这种情况下,怎样让 ...

  8. springboot集成sitemesh

    一.sitemesh介绍 sitemesh是一种装饰器,是由一个基于Web页面布局.装饰及与现存Web应用整合的框架,类似于模板页的概念,可以整合页面输出. 二.springboot 整合 整合过程其 ...

  9. sitemesh 了解

    sitemesh2.4 Sitemesh 是由一个基于 Web 页面布局.装饰及与现存 Web 应用整合的框架.它能帮助我们由大量页面工程的项目中创建一致的页面布局和外观,如一 致的导航条.一致的 b ...

最新文章

  1. 高达82 fps的实时文本检测,可微分二值化模块
  2. python在审计中的应用-基于python的自动化代码审计
  3. python前端学习-------Flask框架基础(建议收藏)
  4. QUrl不同版本之间的坑
  5. SAP Spartacus 读取 Cart 的原理分析
  6. 【dfs】栅栏的木料(2012特长生 T4)
  7. Java核心技术36讲
  8. Linux进阶之路———Shell 编程入门
  9. Kubernetes之(五)快速部署应用
  10. 【英语学习】【Level 07】U01 Making friends L3 Do you eat here a lot?
  11. 三星公布三款新型车用芯片 向大众供应
  12. 纯手写实现HashMap
  13. C++ HDC作图 内存画图
  14. 【PLSQL】过程procedure形参和参数
  15. 【JY】力荐 | 区域建筑地震安全性有限元分析示例
  16. 机器学习OneR算法
  17. Verilog学习笔记-——Verilog模块例化
  18. 用for循环写520个我喜欢你
  19. Webpack 打包commonjs 和esmodule 模块的产物对比
  20. 使用LVM动态管理4T以上硬盘

热门文章

  1. ZigBee Cluster Library Specification Revision 6(ZigBee Document: 07-5123-06)
  2. 从此无暴风,更无影音
  3. Heritrix3.1.1使用教程
  4. python解决迅雷下载限制的方法
  5. 正则表达式同时匹配中英文_,还控制长度
  6. 第五届“泰迪杯“技能赛赛题讲解直播来啦
  7. 栈的基本操作及其应用
  8. 打印机打印服务自动关闭与无法启动问题
  9. 基于Mirai框架的QQ机器人使用文档----郑大科协2021招新群
  10. 华为服务器pci数据捕获和信号处理,2021年华为LTE初级面试题与答案汇总.doc