struts中使用 titles

目的:重复使用 页面的配置文件,达到随时更换网页内容使用方法: 1. 用ECLIPS加入STRUTS时,已经在WEB-INF下生成了struts-tiles.tld 所以

现在自己只要在该文件下现再建一个 tiles-defns.xml即可[该文件用于描述tiles框架的配置信息], -----------------------------------

--------- 2. 在struts-config.xml 里面添

加如下的内容类[使项目中可以应用TILES框架]: <plug-in className="org.apache.struts.tiles.TilePlugin"> <set-property

property="definitions-config" value="/WEB-INF/tiles-defns.xml"/> <set-property property="moduleAware" value="true"/> <set-

property property="definitons-parser-validate" value="true"/> </plug-in> ////其中 definitions-config 指定了TILES框架模板文件

所在的位置 -----------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------- 接下来就是在项目中应

用TILES框架 [使用TILES框架的时候,先要创建TILES模板,然后在需要使用的地方直接调用即可] 例如下面:定义了一个上中下结构的网页模板.

模板具体定义如下

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles"%>
<!--上面这行是引入TILES标签库-->
<html>
  <head>
    <title>tiles模版</title>
    <style>
       div{FONT-SIZE: 13px}
    </style>
  </head>
  <body>
      <table align="center">
          <tr bgcolor="#999999">
              <td>
<!--下面这行就是使用TILES标签,功能:在指定位置插入指定内容,其中attribute的值是tile-defns.xml中定义的内容,  tiles-defns.xml的内容在下面有介绍-->
                  <tiles:insert attribute="header"></tiles:insert>              </td>
          </tr>
          <tr bgcolor="#CCCCCC">
              <td>
                  <tiles:insert attribute="body"></tiles:insert>              </td>
          </tr>     
          <tr bgcolor="#999999">
              <td>
                <tiles:insert attribute="footer"></tiles:insert>              </td>
          </tr>     
      </table>
  </body>
</html>

3.  tiles-defnx.xml的内容
   <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE tiles-definitions  PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
<tiles-definitions>
<definition name="mainlayout" page="/template/mainTemplate.jsp">
<!--上面这行定义了一个叫'mainlayout的布局,其中page属性指定要使用该模板的页面是:template/mainTemplate.jsp这个JSP页面.下面定义了网页三部分的内容,其中BODY部分没有指定,可以在使用这个模板的时候再添加
其中HEADER属性使用到的页面具体页面代码为

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<div>这是tiles模版的header</div>

FOOT页面代码为
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<div>这是tiles模版的footer</div>
'-->
<put name="header" value="/include/header.jsp" />
<put name="body" value="" />
<put name="footer" value="/include/footer.jsp" />
</definition>

<definition name="tilesTest" extends="mainlayout">
<put name="body" value="/include/content.jsp" />
</definition>
</tiles-definitions>


4.  真正开始使用刚才建的那个模板[即使用刚才建的那个布局]
    刚才布局中已经指定HEADER和FOOT部分内容,只要添加BODY部分的内容即可

    使用刚建的那个布局的代码如下:
    <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles"%>
<tiles:insert definition="tilesTest"></tiles:insert>
<!--上面这行表明是插入了一个页面布局,名称为:tilesTest,这个布局的内容在上面的
'tiles-defnx.xml'文件中已经定义,下面给出了其中用到的content.jsp页面的内容

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<div>这是tiles模版的主体</div>
-->


OK   使用过程已经介绍完毕.去睡觉啦

你可能感兴趣的:(java,apache,xml,框架,struts)