SiteMesh 是一个网页布局和修饰的框架,利用它可以将网页的内容和页面结构分离,以达到页面结构共享的目的。Sitemesh是由一个基于Web页面布局、装饰以及与现存Web应用整合的框架。它能帮助我们在由大量页面构成的项目中创建一致的页面布局和外观,如一致的导航条,一致的banner,一致的版权等等。它不仅仅能处理动态的内容,如jsp,php,asp等产生的内容,它也能处理静态的内容,如htm的内容,使得它的内容也符合你的页面结构的要求。甚至于它能将HTML文件像include那样将该文件作为一个面板的形式嵌入到别的文件中去。所有的这些都是GOF的Decorator模式的最生动的实现。尽管它是由java语言来实现的,但它能与其他Web应用很好地集成。
第一步,导入SiteMesh的jar包
第二步,在web.xml中配置sitemesh
<!-- 配置sitemesh --> <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>
第三步,添加一公用页面/jsp/base.jsp
<%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK"%> <%@ taglib prefix="decorator" uri="http://www.opensymphony.com/sitemesh/decorator"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GBK"> <link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/resources/css/main.css"> <title>用户信息</title> <script type="text/javascript"> function doBackUserList(obj, form){ if(obj == "addUser" || obj == "showUser"){ form.action = "./userList"; }else if(obj == "updateUser"){ form.action = "../userList"; } form.submit(); } </script> </head> <body> 用户信息 <hr/> <decorator:body></decorator:body> </body> </html>
其中,doBackUserList方法可以在用户新增、用户修改、展示用户信息页面调用,把静态资源/resources/css/main.css的引用从用户列表页面移到该页面中。
第四步,Sitemesh配置文件/WEB-INF/decorators.xml
<?xml version="1.0" encoding="UTF-8"?> <decorators defaultdir="/jsp/"> <excludes> <pattern>/json*</pattern> </excludes> <decorator name="main" page="base.jsp"> <pattern>/*</pattern> </decorator> </decorators>
相关推荐
**SpringMVC、Freemarker与Sitemesh3详解** SpringMVC是Spring框架的一部分,它是一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。SpringMVC提供了一个灵活的处理机制,包括处理器映射、视图解析、数据绑定...
springmvc + mybatis + sitemesh3 超简洁例子 整合springmvc mybatis 方法请看: http://blog.csdn.net/kokoyuo/article/details/52808510
在SpringMVC框架中,实现REST风格的接口可以让我们的API更加简洁,易于理解和使用。本笔记将深入探讨如何在SpringMVC中创建RESTful的API。 1. **REST原则** - 统一接口:REST接口应具有统一的格式,通常使用HTTP...
本源代码示例将展示如何使用SpringMVC构建REST接口。在实际开发中,我们通常会遵循以下步骤: 1. **配置SpringMVC**: - 首先,在`web.xml`中配置SpringMVC的核心DispatcherServlet,它负责处理HTTP请求并分发到...
将Spring MVC与Sitemesh结合使用,可以实现更高效的Web应用开发。以下是对这一结合的详细说明: 1. **Sitemesh的引入**:首先,我们需要在项目中引入Sitemesh的依赖。这通常通过在Maven的pom.xml文件中添加Sitemesh...
Hibernate允许开发者将数据库操作转换为面向对象的代码,与SpringMVC结合使用时,可以轻松实现数据持久化,进一步完善REST接口的后端功能。 总之,SpringMVC 4.2为开发REST接口提供了强大的支持,结合Maven和...
REST风格简介 2、RESTful入门案例 入门案例 请求方法设定 请求路径参数 3、REST快速开发 RESTful快速开发(标准开发) @RestController 标准请求动作映射(4种) 4、案例:基于RESTful页面数据交互 5、SSM整合 ...
在本篇中,我们将深入探讨如何使用Spring MVC构建RESTful接口,主要关注的是在实际项目中创建第一个REST风格接口的源代码实现。REST(Representational State Transfer)是一种网络应用程序的设计风格和开发方式,...
7. **项目结构**:根据压缩包中的"springmvc"文件名,我们可以推测项目可能包含Spring MVC的相关配置、MyBatis的Mapper文件、Sitemesh3的配置、以及数据库连接和业务逻辑相关的Java类。具体的目录结构通常包括src/...
springmvc + mybatis + sitemesh3 简洁例子 springmvc + mybatis 整合过程: http://blog.csdn.net/kokoyuo/article/details/52808510
在本项目"activiti+springMVC+mybatis rest风格整合demo"中,开发者通过集成Activiti、Spring MVC和MyBatis三个核心组件,构建了一个基于RESTful API的工作流管理系统。这个项目对于初学者来说是一个很好的学习资源...
本人在前辈《从MVC到前后端分离(REST-个人也认为是目前比较流行和比较好的方式)》一文的基础上,实现了一个基于Spring的符合REST风格的完整Demo,具有MVC分层结构并实现前后端分离,该项目体现了一个具有REST风格...
**SpringMVC 3.2 RESTful服务** SpringMVC是Spring框架的一部分...通过这个压缩包中的代码,开发者可以学习到如何配置SpringMVC以支持REST,编写RESTful控制器,以及如何在前端使用jQuery发送REST请求并处理JSON响应。
SpringMVC作为控制器负责调度请求,MyBatis处理数据库交互,Ehcache提供缓存功能以提高性能,JSP生成动态视图,而Sitemesh则用于统一和美化整个网站的页面布局。这种架构模式在实际项目中非常常见,能够提供高效、...
采用springMVC倒灶的纯rest风格的医院管理系统,利用springMVC的自动注入功能,和最新的mvc:resource标签,可以访问静态资源。值得借鉴。利用maven的构建也更加便于管理jar包,最后是采用了resin 3.1的服务器,有别...
**SpringMVC+REST+AngularJS框架详解** 在现代Web应用开发中,SpringMVC、RESTful API和AngularJS是三个关键的技术组件,它们共同构建了一个高效、灵活且可扩展的开发架构。本文将深入探讨这三大技术的核心概念以及...
这是我的这篇博文的源码:SpringMVC与SiteMesh2.4无缝整合并借助JSR303规范实现表单验证,博文地址:http://blog.csdn.net/jadyer/article/details/7574668
通过使用 SiteMesh,可以将页面的头部、底部、侧边栏等公共部分抽取出来,作为模板,然后在每个页面中应用这个模板,从而保持网站的整体风格一致。SiteMesh 使用过滤器(Filter)来拦截HTTP请求和响应,将页面内容与...
REST(Representational State Transfer)是一种网络应用程序的设计风格和开发方式,以简洁、统一的接口来组织网络资源,强调状态转移,常用于构建高效、可伸缩的Web服务。 ### RESTful API 基本概念 RESTful API ...