Sitemesh前段框架基础
用sitemesh框架解決項(xiàng)目統(tǒng)一布局的解決方案
Sitemesh裝飾框架
Sitemesh項(xiàng)目簡(jiǎn)介:
Sitemesh是一個(gè)用來在jsp中實(shí)現(xiàn)頁面布局和裝飾(layout and decoration)的框架組件,能夠幫助網(wǎng)站開發(fā)人員較容易實(shí)現(xiàn)頁面中動(dòng)態(tài)和靜態(tài)裝飾外觀的分離。
Sitemesh的作用
Sitemesh是由一個(gè)基于Web頁面布局,裝飾以及與實(shí)現(xiàn)村Web應(yīng)用整合的框架,它能幫助我們?cè)谟纱罅宽撁鏄?gòu)成的項(xiàng)目中創(chuàng)建一支的頁面布局和外觀 ,如一致的導(dǎo)航條, 一致的banner,一致的版權(quán),等等。它不僅僅能處理動(dòng)態(tài)的內(nèi)容,如jsp,php,asp等產(chǎn)生的內(nèi)容,它也能處理靜態(tài)的內(nèi)容,如htm的內(nèi)容,使得它的內(nèi)容也符合你的頁面結(jié)構(gòu)的要求。
如何使用Sitemesh
1.下載SiteMesh
下載地址:
http://www.opensymphony.com/sitemesh/download.action
2、在工程中引入Sitemesh的必要jar包
3.修改你的web.xml里面加入sitemesh的過濾器
pom.xml引入sitemash 的 jar包 :
web-inf底下的web.xml 下的攔截器配置:
上圖中的第二個(gè)filter-name和圖中的第一個(gè)filter-name是相匹配的》》
/*<–攔截所有的請(qǐng)求路徑 過濾所有的訪問路徑 -->
url-patten 攔截下的訪問路徑 會(huì)根據(jù) 上圖中的第二個(gè)filter-name 去查詢第一個(gè)filter-name 并執(zhí)行第一個(gè) filter-name中的讓它的類去處理攔截下的請(qǐng)求
3.任何框架都有它自己的配置文件!Sitemesh也不例外
配置文件
sitemesh默認(rèn)配置文件名為 decorators.xml(在WEB_INF下創(chuàng)建)核心文件
defaultdir <-- defultdir設(shè)置了裝飾頁面的目錄 裝飾頁面好比如相片框 (不是普通頁面 ) 上圖的裝飾頁面放在了decorators目錄下(decorators放在WEB_INF下)-- >
decorator標(biāo)簽 區(qū)別就是父標(biāo)簽是復(fù)數(shù) 帶有“s”子標(biāo)簽沒有;
name =‘main’ page指向 decorators文件夾下的main.jsp裝飾頁面
mian.jsp 作為主裝飾頁面
頁面content內(nèi)容需要<%@ taglib prefix=‘xxx’ uri=’ 詳情見上圖’%>
prefix=‘xxx’ 前綴可以自己隨意命名 但是使用的時(shí)候 要使用自己的命名;
這里的prefix 使用的是’decorator’
常用的有三個(gè)標(biāo)簽 decorator:body
decorator:head
decorator:title
decorator:body的作用:
引入decorator:body</decorator:body>標(biāo)簽
頁面所有的內(nèi)容全都放在這個(gè)decorator:body*******…</decorator:body>標(biāo)簽上
標(biāo)題標(biāo)簽
每個(gè)頁面要顯示不一樣的標(biāo)題就是使用decorator:title/
測(cè)試下:
我當(dāng)前目錄下有index.jsp頁面
啟動(dòng)tomcat
在瀏覽器中的地址欄訪問這個(gè)頁面 http://localhost://8080/sitemeshdemo/index.jsp
解析下:
再換個(gè)演示:
這里添加了home頁面
然后 瀏覽器地址訪問http://localhost:8080/sitemeshdemo/home.jsp
總結(jié)
以上是生活随笔為你收集整理的Sitemesh前段框架基础的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java语言 编译原理_【Java学习】
- 下一篇: 如何解决类模板的分离编译问题?