关闭

sitemesh框架使用入门

标签: sitemeshweb应用
4802人阅读 评论(0) 收藏 举报
分类:

sitemesh框架使用入门


上篇博客写到如何创建maven web项目。大家是不是有点迷茫,创建maven项目能干嘛?那么,我就结合maven 项目简单使用和sitemesh框架使用入门一起讲。

我们先了解什么是sitemesh?

Sitemesh是由一个基于Web页面布局、装饰及与现存Web应用整合的框架。是基于Servlet的filter的,即过滤流。它是通过截取response,并进行装饰后再交付给客户。需要两类页面,第一是模版页面,一个是被模版修饰的页面。

开始码砖了。。。。

第一步:创建maven web项目,不清楚的可以根据 eclipse 创建maven web项目 具体了解

第二步:导包

<dependency>
    <groupId>opensymphony</groupId>
    <artifactId>sitemesh</artifactId>
    <version>2.4.2</version>
</dependency> 
第三步:在web.xml文件中配置filter

<filter>
  <filter-name>sitemesh</filter-name>
  <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
</filter>
<filter-mapping>
   <filter-name>sitemesh</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>

第四步:在WEB-INF/下创建decorators.xml描述装饰器

<?xml version="1.0" encoding="utf-8"?>
<decorators defaultdir="/WEB-INF/layouts/">
    <decorator name="default" page="default.jsp">
        <pattern>/*</pattern>
    </decorator>
</decorators> 

第五步:创建模版页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="sitemesh" uri="http://www.opensymphony.com/sitemesh/decorator" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title><sitemesh:title default="装饰器页面..." /></title>
<sitemesh:head />
</head>
<body>
	<p>=============头部菜单=============</p>
	<hr>
	<sitemesh:body />
	<hr>
	<p>//////////////////////////////底部信息\\\\\\\\\\\\\\\\\\\\\\\\\\\\</p>
</body>
</html>
第六步:创建被模版修饰的页面,first.jsp和second.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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=UTF-8">
<title>被修饰的第一个页面</title>
</head>
<body>
	<p>这是第一个页面</p>
	<a href="views/second.jsp">下一页</a>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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=UTF-8">
<title> 被修饰的第二个页面</title>
</head>
<body>
	<p>这是第二个页面</p>
</body>
</html>
第七步:右击项目====run as====maven test,执行maven项目,执行maven测试,同时自动现在依赖的jar。maven clean 清楚上次构建的文件,maven install 把项目安装到本地库,让其他项目依赖。

第八步:在浏览器上访问,效果图如下:



资源下载地址:http://download.csdn.net/detail/qq_19558705/9277105

每天在进步,每天在成长,如有问题和建议可以留言,我会及时修正。


更多干货等你来拿 http://www.itit123.cn/











2
0
查看评论

sitemesh_入门

笼统理解: 通过filter包装request和response,实现模板功能。 具体实现: 首先,将sitemesh的jar复制到web项目的lib目录下 然后,编写sitemesh的三个配置文件 第一、编写web.xml 目的: 1、将sitemesh框架集成到
  • Kaiwii
  • Kaiwii
  • 2011-10-17 10:38
  • 3541

Sitemesh 3 模板框架使用

1 . Sitemesh 3 简介 Sitemesh 是一个网页布局和修饰的框架,基于 Servlet 中的 Filter,类似于 ASP.NET 中的‘母版页’技术。参考:百度百科,相关类似技术:Apache Tiles。 官网:http://wiki.sitemesh.org/wiki/disp...
  • u013378306
  • u013378306
  • 2016-03-04 12:32
  • 789

sitemesh的简单回顾

<br />sitemesh主要有三个主要文件:sitemesh.xml,decorators.xml和做布局用的jsp页面。<br /> 一、sitemesh.xml<br /> 对于sitemesh.xml这个文件,官方文档上说它不是必须的。sitemes...
  • bluishglc
  • bluishglc
  • 2010-10-27 18:21
  • 9647

SiteMesh工作原理

好吧!尽管这个标题有点吓人,但我并不是来摆显自己有多么的能耐,只不过是最近比较闲,而且程序员们天生爱折磨自己,所以就顺带研究了一下SiteMesh的原理。如果你是第一次听说SiteMesh,或者从未使用过它,而你又对SiteMesh感到兴趣的话,请务必先闻一闻、用一用,感受一下SiteMesh的魅力...
  • u012889214
  • u012889214
  • 2015-05-21 09:13
  • 1074

spring mvc + freemarker + sitemesh 案例

pom 文件 org.freemarker freemarker 2.3.20 org.springframework spring-core 4....
  • liuao107329
  • liuao107329
  • 2017-06-26 15:40
  • 429

sitemesh入门

sitemesh应用Decorator模式,用filter截取request和response,把页面组件head,content,banner结合为一个完整的视图。通常我们都是用include标签在每个jsp页面中来不断的包含各种header, stylesheet, scripts and fo...
  • gotohbu
  • gotohbu
  • 2009-08-11 17:38
  • 504

SiteMesh框架统一布局用法介绍

SiteMesh 是一个网页布局和修饰的框架,基于 Servlet 中的 Filter,类似于 ASP.NET 中的‘母版页’技术。 介绍: SiteMesh是OpenSymphony团队开发的JEE框架之一,它是一个非常优秀的页面装饰器框架。它通过对所有的用户请求进行过滤,并对服务器向客户端响应也...
  • weixin_36380516
  • weixin_36380516
  • 2017-07-11 11:58
  • 1513

sitemesh3.0 自定义标签

对于sitemesh3,官方只给出了 三个标签,但是对于一些特殊的需求是远远不能满足的,好了,不废话了,进入正题: 本文章是基于java类来配置的,先建好sitemesh的配置类SiteMeshFilter ,如下: public class SiteMeshFilter extends Con...
  • u010425898
  • u010425898
  • 2015-12-22 10:54
  • 2080

iOS开发——AFNetworking框架使用详解

AFNetworking is a delightful networking library for iOS and Mac OS X.It’s built on top of the Foundation URL Loading System, extending the powerful hi...
  • u012350430
  • u012350430
  • 2016-05-28 21:45
  • 6500

[页面模板框架对比] Apache Tiles VS Sitemesh

1. 原理对比 (1) Apache Tiles 顾名思义,Tile是瓷砖的意思,也就是说一个网页是由多个Tile组成的。     用户通过访问一个页面的Apache Tiles定义名,就可以访问一个由定义文件中包含的页面组成的最终的JSP。     如以下一...
  • TBWood
  • TBWood
  • 2014-11-10 17:00
  • 7011
    友情链接
    个人资料
    • 访问:797110次
    • 积分:8925
    • 等级:
    • 排名:第2547名
    • 原创:132篇
    • 转载:42篇
    • 译文:0篇
    • 评论:140条
    博客特色
    闻道有先后,术业有专攻。无贵无贱,无长无少,道之所存,师之所存也。
    我很喜欢这句话,当我们遇到不熟悉的领域,就应该虚心学习。同时我们也不能因为别人的夸赞而骄傲,我们只是比他们先了解罢了。
    我喜欢将学习的知识总结写成博客。把这里当作笔记本,方便自己同时也希望帮助到其他人。
    博客专栏