tiles框架的使用记录
来源:互联网 发布:滴露和威露士 知乎 编辑:程序博客网 时间:2024/05/22 05:07
tiles框架是一个很强大的框架,能够方便快捷的搭建各种模块化的web架构。比如包含菜单、banner、主体、footer的web架构。
一、在http://tiles.apache.org/ 下载Tiles 2.1.2(点击共享下载)
需要引入这几个jar: tiles-api-2.1.2.jar,tiles-core-2.1.2.jar,tiles-servlet-2.1.2.jar,tiles-jsp-2.1.2.jar
二、在WEB-INF中增加tiles-defs.xml文件:
<?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN" "http://tiles.apache.org/dtds/tiles-config_2_1.dtd"> <tiles-definitions> <definition name="sample.page" template="/jsp/layout/layout.jsp"> <put-attribute name="title" value="标题" /> <put-attribute name="header" value="/jsp/layout/header.jsp" /> <put-attribute name="menu" value="/jsp/layout/menu.jsp" /> <put-attribute name="footer" value="/jsp/layout/footer.jsp" /> </definition> </tiles-definitions>
三、制作一个jsp模块,比如。注意在头部需要引入taglib
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %> <html> <head> <title><tiles:getAsString name="title"/></title> </head> <body> <table> <tr> <td colspan="2"> <tiles:insertAttribute name="header" /> </td> </tr> <tr> <td> <tiles:insertAttribute name="menu" /> </td> <td> <tiles:insertAttribute name="body" /> </td> </tr> <tr> <td colspan="2"> <tiles:insertAttribute name="footer" /> </td> </tr> </table> </body> </html>
四、在web.xml中:
增加context param:
<context-param> <param-name> org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG </param-name> <param-value> /WEB-INF/tiles-defs.xml </param-value> </context-param>
增加filter:
<filter> <filter-name>tilesFilter</filter-name> <filter-class>org.apache.tiles.web.util.TilesDecorationFilter</filter-class> <init-param> <param-name>definition</param-name> <param-value>sample.page</param-value> </init-param> <init-param> <param-name>attribute-name</param-name> <param-value>body</param-value> </init-param> </filter> <filter-mapping> <filter-name>tilesFilter</filter-name> <url-pattern>*.jsp</url-pattern> <dispatcher>FORWARD</dispatcher> </filter-mapping>
增加listener:
<listener> <listener-class>org.apache.tiles.web.startup.TilesListener</listener-class> </listener>
因为tiles是struts的一部他,所以这样可以得用struts的跳转(forward)来改变body定义的页面。如果某个页面forward时不想经过tiles处理,可以在forward之前加一个
req.setAttribute ("org.apache.tiles.decoration.PREVENT:"+definitionName, Boolean.TRUE);
其中definitionName就是filter init-param中的definition
另外一种配置不需要使用filter
在Action中返回view的时候,使用格式:
tiles:def-name:attr-name=jsp-name
其中def-name是tiles定义的definition name, attr-name是要插入的jsp对应的attr, jsp-name是要插入的jsp
比如: "tiles:main.page:body=userList.jsp"
- tiles框架的使用记录
- tiles框架的使用
- TILES框架的使用
- Struts Tiles框架的使用
- ssm框架下 tiles框架 的使用
- Struts2 中的Tiles框架的使用
- Struts 框架-----使用 Tiles
- Struts Tiles框架使用
- Struts Tiles框架使用
- Struts Tiles框架使用
- Tiles框架使用
- Struts Tiles框架使用
- Tiles框架的配置
- Struts的Tiles框架
- Tiles框架如何使用介绍
- Tiles框架使用总结(转)
- J2EE 之structs框架之布局Tiles的使用小结
- Tiles的使用
- mybatis写mapper文件注意事项
- Linux下利用ioctl函数获取网卡信息
- 在CListCtrl之间及CListCtrl内部实现拖放
- struts2 18拦截器详解(六) --- PrepareInterceptor
- 算法习题38:百度面试题(天平,大量输入流,URL去重)
- tiles框架的使用记录
- coci2012 ograda
- 一个PHP购物车类
- Gson- json转换的jar包工具-来自google
- 数据库旅途无捷径,多么痛的领悟
- github上传自己代码的使用步骤
- eclipse下的两个小问题
- cognos 提示pcsk#7错误的处理办法
- Oracle备份恢复arcgis数据问题