SiteMesh的简单使用
简介:
下载SiteMesh:
官方下载地址:http://wiki.sitemesh.org/wiki/display/sitemesh/Home


使用:
我们这里使用IDEA进行演示
导入SiteMesh jar包

在web文件中的WEB_INF中创建lib文件夹 再把SiteMesh jar包放入 lib中。
在 web.xml 中配置 Filter(过滤器)
<!--定义过滤器-->
<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>

再创建一个decorators.xml文件

<?xml version="1.0" encoding="utf-8" ?> <decorators defaultdir="/layout/">
<!-- 先定义不过滤的页面,即排除页面 -->
<excludes>
<pattern>/assets/*</pattern>
</excludes> <!-- 定义需要修饰的页面 -->
<decorator name="book" page="book_tpl.jsp">
<pattern>/book/*</pattern>
</decorator> <decorator name="cart" page="cart_tpl.jsp">
<pattern>/cart/*</pattern>
</decorator> </decorators>

之后,创建模板文件 /layouts/book_tpl.jsp
<!doctype html>
<html lang="en">
<head>
<title><sitemesh:title /></title>
<sitemesh:head />
</head>
<body>
<header>
<%@include file="book_header.jsp" />
</header> <div>
<sitemesh:body />
</div> <footer>
<%@include file="book_footer.jsp" />
</footer> <!-- 其他用法 --> <!-- 可以通过 meta 在页面之间传递数据 -->
<!-- <meta name='xxx' content='ksjfkjskf' -->
<decorator:getProperty property="meta.xxx" /> <!-- 可以通过 usePage 引用到原始页面的 jsp 对象 -->
<decorator:usePage id="myPage" />
<%= myPage.getRequest().getAttribute("xxx") %> <!-- 其他,自行总结 -->
</body>
</html>
就可以使用了
可以去下载完整的Demo 地址:https://github.com/oukele/StieMeshDemo
SiteMesh的简单使用的更多相关文章
- SiteMesh学习入门
http://www.java3z.com/cwbwebhome/article/article2/2962.html?id=1668 demo下载 简介: sitemesh应用Decorat ...
- [页面模板框架对比] Apache Tiles VS Sitemesh
1. 原理对比 (1) Apache Tiles 顾名思义,Tile是瓷砖的意思,也就是说一个网页是由多个Tile组成的. 用户通过访问一个页面的Apache Tiles定义名,就可以访问一个由定义文 ...
- sitemesh入门
今天在公司用到了sitemesh这个框架. 网上的资料已经有很多了. 在此就不做具体介绍了, 仅仅做个笔记. sitemesh是一种模板框架,是为了解决页面重复代码而设计的. 设计思想 siteme ...
- 转:SiteMesh简介
OS(OpenSymphony)的SiteMesh是一个用来在JSP中实现页面布局和装饰(layout and decoration)的框架组件,能够帮助网站开发人员较容易实现页面中动态内容和静态装饰 ...
- 转-decorators.xml的用法-http://blog.csdn.net/gavinloo/article/details/7458062
今天改前人做的项目,用struts2,spring,hibernate框架做的,对了,还有jQuery.我用jquery做异步请求到后台,生成json数据返回前台生成下拉输入框,请求到后台以后,成功生 ...
- decorators.xml的用法 (转)
spring,hibernate框架做的,对了,还有jQuery. 我用jquery做异步请求到后台,生成json数据返回前台生成下拉输入框,请求到后台以后,成功生成了json数据并根据struts的 ...
- decorators.xml的用法
spring,hibernate框架做的,对了,还有jQuery.我用jquery做异步请求到后台,生成json数据返回前台生成下拉输入框,请求到后台以后,成功生成了json数据并根据struts的映 ...
- 使用Spring Mvc 转发 带着模板 父页面 之解决方法 decorators.xml
周末了,周一布置的任务还没完毕,卡在了页面跳转上,接手了一个半截的项目要进行开发,之前没有人给培训.全靠自己爬代码,所以进度比較慢.并且加上之前没实用过 Spring Mvc 开发项目.所以有点吃力, ...
- SiteMesh配置下载使用(简单介绍)
简单介绍 SiteMesh 是一个网页布局和修饰的框架,利用它可以将网页的内容和页面结构分离,以达到页面结构共享的目的. Sitemesh是由一个基于Web页面布局.装饰以及与现存Web应用整合的框架 ...
随机推荐
- [Comet OJ - Contest #6 D][48D 2280]另一道树题_并查集
另一道树题 题目大意: 数据范围: 题解: 这个题第一眼能发现的是,我们的答案分成两种情况. 第一种是在非根节点汇合,第二种是在根节点汇合. 尝试枚举在第几回合结束,假设在第$i$回合结束的方案数为$ ...
- 19.通过MAPREDUCE 把收集数据进行清洗
在eclipse软件里创建一个maven项目 jdk要换成本地安装的1.8版本的 加载pom.xml文件 <project xmlns="http://maven.apache.org ...
- SpringBoot集成MybatisPlus报错
SpringBoot集成MybatisPlus报错 启动的时候总是报如下错误: java.lang.annotation.AnnotationFormatError: Invalid default: ...
- 【xlwings】 wps 和 office 的excel creat_sheet区别
最近在学习 xlwings,参考学习的网址:https://www.jianshu.com/p/b534e0d465f7 写得很棒,学到了很多. 在新建sheet表单, 发现一个问题. import ...
- X86逆向1:软件破解入门课【课件下载】
从本节课开始,我将带领小白入门学习软件破解的相关内容,大佬绕过,以后将会定期更新从最基本的破解知识点开始学习,由简单到复杂循序渐进,难度会逐步提高. 为了防止版权方面的争议,我将自行编写一些破解案例来 ...
- 转SSL/TLS协议
TLS名为传输层安全协议(Transport Layer Protocol),这个协议是一套加密的通信协议.它的前身是SSL协议(安全套接层协议,Secure Sockets Layer).这两个协议 ...
- luogu题解P2312解方程--暴力模+秦九韶
题目链接 https://www.luogu.org/problemnew/show/P2312 分析 这道题很毒啊,这么大的数. 但是如果多项式\(\sum_{i=0}^N a[i]*X^i=0\) ...
- React学习——子组件给父组件传值
//子组件 var Child = React.createClass({ render: function(){ return ( <div> 请输入邮箱:<input onCha ...
- 1 asp.net 中如何把用户控件应用于母版页
1 创建用户控件 2 在母版页中注册用户控件 3 使用 <%@ Master Language="C#" AutoEventWireup="true" C ...
- jeesite直接登录——真实破解
前台 后台 @RequiresPermissions("alarm:alarm:view")一定要注释 —————————————————————————————————————— ...