sitemesh在项目中的使用
导入sitemesh包
<dependency> <groupId>opensymphony</groupId> <artifactId>sitemesh</artifactId> <version>2.4.2</version> </dependency>
配置过滤器
<filter> <filter-name>sitemesh</filter-name> <filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class> </filter> <filter-mapping> <filter-name>sitemesh</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
定义url规则
<?xml version="1.0" encoding="UTF-8"?> <decorators defaultdir="/WEB-INF/decorators"> <!-- Any urls that are excluded will never be decorated by Sitemesh --> <!-- exclude中可以定义那些页面不使用模板 --> <excludes> <pattern>/exclude.jsp</pattern> <pattern>/resources/*</pattern> <pattern>/02.jsp</pattern> </excludes> <decorator name="basic" page="basic.jsp"> <pattern>/web/*</pattern> </decorator> </decorators>
定义模板
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator" %> <!DOCTYPE> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title><decorator:title/></title> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "//hm.baidu.com/hm.js?b974898974983f73f9c086e4f06d2d7b"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> <link rel="stylesheet" href="${pageContext.request.contextPath }/resources/user/widget/bootstrap/css/bootstrap.min.css"> <script src="${pageContext.request.contextPath }/resources/user/widget/jquery/jquery.min.js"></script> <script src="${pageContext.request.contextPath }/resources/user/widget/bootstrap/js/bootstrap.min.js"></script> <style type="text/css"> body { padding-top: 60px; padding-bottom: 40px; } </style> </head> <body> <jsp:include page="../views/common/header.jsp"></jsp:include> <div class="container-fluid"> <div class="row"> <!--留空--> <div class="col-md-1"></div> <div class="col-md-10"> <decorator:body/> </div> </div> </div> <jsp:include page="../views/common/footer.jsp"></jsp:include> </body> </html>