sitemesh 使用方法
一、简介
二、使用步骤
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>
总之,定义模板的作用是,让指定的网页用模板修饰,比如模板的上面有一个导航栏,则被模板修饰的网页都有导航栏。
sitemesh 使用方法的更多相关文章
- javaSE27天复习总结
JAVA学习总结 2 第一天 2 1:计算机概述(了解) 2 (1)计算机 2 (2)计算机硬件 2 (3)计算机软件 2 (4)软件开发(理解) 2 (5) ...
- 关于sitemesh和freemark在struts2中的一些问题总结
最近刚开始工作,首先让我在熟悉公司编程环境的前提下做一些简单的增删改查,在此总结一些这些天遇到的问题. 1,在刚开始建表的时候,我在oracle数据库中设置的主键id为四位的number类型,对应的实 ...
- Tiles & SiteMesh
Tiles & SiteMesh 这两天在给公司的新项目搭框架,在配tiles框架的时候发现一个小问题: 比如开发团队一共5人,每人10个页面,如果按照简单的tiles框架配置方法,每个 ...
- sitemesh学习笔记(3)
前两篇博客浅谈了一下sitemesh3.0和2.4的区别和简单用法,今天我做了一个结合sturts2的sitemesh构架,由于strusts2只能用sitemesh2.x的版本,与3.0目前还不能兼 ...
- SpringMVC+spring-security+sitemesh+hibernate+freemarker整合-转
http://www.oschina.net/code/snippet_170632_46774 代码分享 当前位置: 代码分享 » Java » Web编程 搜 索 SpringMVC+spr ...
- sitemesh使用步骤
使用sitemesh的步骤 1. 添加jar文件到classpath 2. 在web.xml中增加过滤器 <!-- Sitemesh --> <filter> <filt ...
- SiteMesh学习入门
http://www.java3z.com/cwbwebhome/article/article2/2962.html?id=1668 demo下载 简介: sitemesh应用Decorat ...
- SiteMesh学习笔记
SiteMesh是一个轻量级的web应用框架,实现了Decorator模式.它的目标是将多个页面都将引用的jsp页面通过配置加载到相应的jsp文件中. 在我们的项目中,每个jsp都需要添加两个top和 ...
- struts2 集成webservice 的方法
由于项目需求的需要,要在原来用Struts2的框架之上集成webservice,因为之前单单做webservice的时候没有多大问题,使用 Spring 和 Xfire就可以轻松地发布服务,但是,当和 ...
随机推荐
- 干货 | 京东云应用负载均衡(ALB)多功能实操
应用负载均衡(Application Load Balancer,简称ALB)是京东云自主研发的一款七层负载均衡产品,主要面向HTTP和HTTPS流量的WEB应用程序,提供灵活的功能配置.应用负载均衡 ...
- 集成通用Mapper
通用Mapper集成 1.引入jar包 <mapper.version>3.0.1</mapper.version><persistence-api.version> ...
- 记录华为、魅族手机无法打印 Log 日志的问题
http://yifeng.studio/2017/02/26/android-meizu-huawei-not-log/ 实测 MEIZU PRO 6 :打开[设置]中的[开发者选项],页面底部找到 ...
- java 利用管道实现线程间通信
package com.lb; import java.io.IOException;import java.io.PipedInputStream;import java.io.PipedOutpu ...
- Cover letter|review|Discussion
选择期刊考虑影响因子和载文量(流量) 分类:多学科eg:CNS 专业综合:eg:nature子刊:lancet:cell,jacs 细分:eg:CA-A 投完Cover letter后,根据审稿结果修 ...
- matlab 启动图标
matlab 启动图标 cat /usr/share/applications/Matlab.desktop [Desktop Entry] Type=Application Name=Matlab ...
- [Algo] 253. Longest Substring Without Repeating Characters
Given a string, find the longest substring without any repeating characters and return the length of ...
- VS IDE调试下将打印日志输出到输出窗口
int aBeginTime = GetTickCount(); TRACE("Current time begin:%d \n", aBeginTime); 查看输出窗口:
- Mongo学习记录
引子 最近做项目利用mongo记录的日志做数据统计.着了非关系型数据库的迷,于是乎买了本<MongoDB实战>学习了一番.记录一下学习笔记,共享之. 准备 我在自己的Linux服务器上装了 ...
- shell_常规小脚本
shell 1.检查Mysql的健康状态 #!/bin/bashpgrep -x mysqld &> /dev/nullif [ $? -ne 0 ]thenecho “At time: ...