- Struts Tiles框架实例
- 网上的例子很多我自己顺便总结了一下希望给大家作为参考...
- 首先 在WEB-INF下建立 "tiles-defs.xml"
- <?xml version="1.0" encoding="GB2312" ?>
- <!DOCTYPE tiles-definitions PUBLIC
- "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
- "http://jakarta.apache.org/struts/dtds/tiles-config.dtd">
- <tiles-definitions>
- <definition name="index-definition" template="/layout.jsp">
- <put name="title" value="爬爬" />
- <put name="header" value="/tiles/header.jsp" />
- <put name="menu" value="/tiles/menu.jsp" />
- <put name="body" value="/tiles/cBody.jsp" />
- <put name="footer" value="/tiles/footer.jsp" />
- </definition>
- <definition name="sub-page" extends="index-definition">
- <put name="test" value="/tiles/test.jsp" />
- <!--以上元素表示在继承主页面的基础上增加子页面-->
- </definition>
- </tiles-definitions>
- 以上的子jsp页面先建立tiles文件夹在WebRoot下,然后把那些jsp子页面放在该文件夹下
- struts-config.xml:
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration
- 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
- <struts-config>
- <data-sources />
- <form-beans />
- <global-exceptions />
- <global-forwards />
- <action-mappings />
- <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
- <plug-in className="org.apache.struts.tiles.TilesPlugin" >
- <set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />
- <set-property property="definitions-parser-validate" value="true" />
- </plug-in>
- </struts-config>
- TilesPlugin插件用于加载Tiles组件的配置文件。在plug-in元素中包含几个set-property子元素,用
- 于向TilesPlugin插件传入附加的参数:
- ·definitions-config参数:指定Tiles组件的配置文件,如果有多个配置文件,则它们之间用逗号
- 分隔。
- ·definitions-parser-validate参数:指定XML解析器是否验证Tiles配置文件,可选值包括true和
- false,默认值为true。
- 模板页layout.jsp(放在WebRoot下):
- <%@ page contentType="text/html; charset=UTF-8"%>
- <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles"%>
- <html>
- <head>
- <title></title>
- </head>
- <body>
- <table width="768px" height="800px" border="2" align="center">
- <tr>
- <td colspan="2" align="center" valign="top" width="768px"
- height="100px" bgcolor="#80ff80"><tiles:getAsString name="title"/>
- <tiles:insert attribute="header"></tiles:insert>
- </td>
- </tr>
- <tr>
- <td align="center" width="150px" height="800px"
- bgcolor="#00ff00">
- <tiles:insert attribute="menu"></tiles:insert>
- </td>
- <td align="right" width="618px" height="800px"
- bgcolor="#ff80c0">
- <tiles:insert attribute="body"></tiles:insert>
- </td>
- </tr>
- <tr>
- <td colspan="2" bgcolor="#00ff40" height="100px">
- <tiles:insert attribute="footer"></tiles:insert>
- </td>
- </tr>
- </table>
- </body>
- </html>
- 测试页 index.jsp(放在WebRoot下):
- <%@ page language="java" pageEncoding="UTF-8"%>
- <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
- <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
- <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
- <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html:html lang="true">
- <head>
- <html:base />
- <title>index.jsp</title>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
- <meta http-equiv="description" content="This is my page">
- <!--
- <link rel="stylesheet" type="text/css" href="styles.css">
- -->
- </head>
- <body>
- This a test page. <br>
- <tiles:insert definition="index-definition"/>
- </body>
- </html:html>
- 在web.xml文件中不用配置保持默认就可以
- ********以上代码我以调试成功 祝大家好运********
- -----------------------------------------------------------
- 如果Tiles组件代表完整的网页,可以直接通过Struts Action来调用Tiles组件。例如,如果希望通过
- Struts Action来调用定义的名为"index-definition"的Tiles组件,可以在Struts配置文件中配置如下
- Action 映射:
- <action-mappings>
- <action path="/index"
- type="org.apache.struts.actions.ForwardAction"
- parameter="index-definition">
- </action>
- </action-mappings>
- 通过Struts Action来调用Tiles组件,可以充分发挥Struts框架负责流程控制的功能。此外,可以减
- 少JSP文件的数目。例如,如果直接通过Struts Action来调用名为"index-definition"的Tiles组件,
- 就不必再创建index.jsp文件。
Struts Tiles框架实例
最新推荐文章于 2024-09-27 15:05:09 发布