Spring mvc整合tiles框架的簡(jiǎn)單入門(mén)教程(maven)
前言
本教程基于Springmvc,Spring MVC是當(dāng)前最優(yōu)秀的MVC框架,自從Spring 2.5版本發(fā)布后,由于支持注解配置,易用性有了大幅度的提高。Spring 3.0更加完善,實(shí)現(xiàn)了對(duì)Struts 2的超越?,F(xiàn)在越來(lái)越多的開(kāi)發(fā)團(tuán)隊(duì)選擇了Spring MVC。
Tiles 框架徹底揭示了 jsp:includes 內(nèi)部的概念 ―― 從而允許您更靈活地創(chuàng)建可重用的頁(yè)面。使用 Tiles 框架,開(kāi)發(fā)人員能夠通過(guò)組合可重用的 tile 來(lái)構(gòu)建頁(yè)面。您應(yīng)該將 tile 看作是可視組件。
下面本文就給大家簡(jiǎn)單說(shuō)tiles框架的整合。
先貼上源碼:
http://xiazai.jb51.net/201712/yuanma/springmc(jb51.net).rar(這里用的是Idea,eclipse,導(dǎo)入的時(shí)候可能會(huì)有些差異)
1、tiles依賴(lài)的jar包:
maven代碼:
<dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils-core</artifactId> <version>1.8.3</version> </dependency> <dependency> <groupId>commons-digester</groupId> <artifactId>commons-digester</artifactId> <version>2.0</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.15</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.5.8</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.4.2</version> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-api</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-core</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-jsp</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-servlet</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-template</artifactId> <version>2.2.1</version> </dependency>
2、Spring mvc 中配置Tiles框架(springmvc-servlet.xml)
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <property name="viewClass"> <value> org.springframework.web.servlet.view.tiles2.TilesView </value> </property> </bean> <bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer"> <property name="definitions"> <list> <value>/WEB-INF/tiles.xml</value> </list> </property> </bean>
3、配置tiles (tiles.xml)
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" "http://tiles.apache.org/dtds/tiles-config_2_0.dtd"> <tiles-definitions> <definition name="base.definition" template="/jsp/templet.jsp"> <put-attribute name="title" value="" /> <put-attribute name="header" value="/jsp/head.jsp" /> <put-attribute name="menu" value="/jsp/menu.jsp" /> <put-attribute name="body" value="" /> <put-attribute name="footer" value="/jsp/foot.jsp" /> </definition> <definition name="CustomerForm" extends="base.definition"> <put-attribute name="title" value="HHHHHHH"/> <put-attribute name="body" value="/jsp/CustomerForm.jsp"/> </definition> <definition name="CustomerDetail" extends="base.definition"> <put-attribute name="title" value="DDDDDD"/> <put-attribute name="body" value="/jsp/CustomerDetail.jsp"/> </definition> </tiles-definitions>
其中templet.jsp(base.definition)作為模板,其中定義的header,menu,body,footer都需要自己配置相應(yīng)的jsp文件,一般body為可變的,其他為固定的jsp。
templet.jsp代碼:
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%> <%@ page language="java" 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><tiles:insertAttribute name="title" ignore="true" /></title> </head> <body> <table border="1" cellpadding="2" cellspacing="2" align="center"> <tr> <td height="30" colspan="2"><tiles:insertAttribute name="header" /> </td> </tr> <tr> <td height="250" width="200"><tiles:insertAttribute name="menu" /></td> <td width="600"><tiles:insertAttribute name="body" /></td> </tr> <tr> <td height="30" colspan="2"><tiles:insertAttribute name="footer" /> </td> </tr> </table> </body> </html> <h1>Bottom</h1> <span style="font-size: 14px;"><p><a >www.qlysou.com</a></p></span> <span style="font-size: 14px;"><p>Copyright <code class="xml plain">©</code><a >www.qlysou.com</a> </p></span>
4.效果
寫(xiě)的不是特別好,大家可以下載源碼跑起來(lái)了看看就明白了,有問(wèn)題歡迎留言交流
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
淺談spring ioc的注入方式及注入不同的數(shù)據(jù)類(lèi)型
這篇文章主要介紹了淺談spring ioc的注入方式及注入不同的數(shù)據(jù)類(lèi)型,具有一定借鑒價(jià)值,需要的朋友可以參考下2017-12-12Java必備知識(shí)之位運(yùn)算及常見(jiàn)進(jìn)制解讀
從現(xiàn)代計(jì)算機(jī)中所有的數(shù)據(jù)二進(jìn)制的形式存儲(chǔ)在設(shè)備中。即 0、1 兩種狀態(tài),計(jì)算機(jī)對(duì)二進(jìn)制數(shù)據(jù)進(jìn)行的運(yùn)算(+、-、*、/)都是叫位運(yùn)算,即將符號(hào)位共同參與運(yùn)算的運(yùn)算2021-10-10Java Socket+mysql實(shí)現(xiàn)簡(jiǎn)易文件上傳器的代碼
最近在做一個(gè)小項(xiàng)目,項(xiàng)目主要需求是實(shí)現(xiàn)一個(gè)文件上傳器,通過(guò)客戶(hù)端的登陸,把本地文件上傳到服務(wù)器的數(shù)據(jù)庫(kù)(本地的)。下面通過(guò)本文給大家分享下實(shí)現(xiàn)代碼,感興趣的朋友一起看看吧2016-10-10SpringBoot實(shí)現(xiàn)多文件上傳的詳細(xì)示例代碼
文件上傳中并沒(méi)有什么太多的知識(shí)點(diǎn),下面這篇文章主要給大家介紹了關(guān)于SpringBoot實(shí)現(xiàn)多文件上傳的詳細(xì)示例,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03Java的System.getProperty()方法獲取大全
這篇文章主要介紹了Java的System.getProperty()方法獲取大全,羅列了System.getProperty()方法獲取各類(lèi)信息的用法,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12SpringBoot實(shí)現(xiàn)WebSocket即時(shí)通訊的示例代碼
本文主要介紹了SpringBoot實(shí)現(xiàn)WebSocket即時(shí)通訊的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04JDK21無(wú)法導(dǎo)入TimeUnit類(lèi)的解決辦法
這篇文章主要給大家介紹了關(guān)于JDK21無(wú)法導(dǎo)入TimeUnit類(lèi)的解決辦法,TimeUnit是java.util.concurrent包下面的一個(gè)類(lèi),TimeUnit提供了可讀性更好的線(xiàn)程暫停操作,通常用來(lái)替換Thread.sleep(),需要的朋友可以參考下2024-01-01Java基礎(chǔ)教程之八大基本數(shù)據(jù)類(lèi)型
這篇文章主要給大家介紹了關(guān)于Java基礎(chǔ)教程之八大基本數(shù)據(jù)類(lèi)型的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06如何使用IDEA2022.1?創(chuàng)建Spring?Boot項(xiàng)目
這篇文章主要介紹了如何使用IDEA2022.1?創(chuàng)建Spring?Boot項(xiàng)目,大家在使用idea開(kāi)發(fā)工具時(shí)發(fā)現(xiàn)給以往的版本略微的不同,細(xì)心的小編在此記錄下,需要的朋友可以參考下2022-08-08