Struts Tiles框架是一个布局框架,允许用户在所有网页上高效地维护页眉,页脚和菜单的标准外观。
瓷砖模板示例
这是一个创建图块模板的示例,以维护Struts中所有网页的页眉和页脚详细信息。
首先,请参阅此Struts磁贴框架关系。
1.获取Struts Tiles库
从Struts分发文件夹或通过Maven中央存储库获取Struts Tiles库
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts-tiles</artifactId>
<version>1.3.10</version>
</dependency>
并将其包含在您的项目依赖库中。
2.创建一个模板
创建一个模板红色和模板绿色用于页眉和页脚详细信息。 这两个模板只是具有不同背景颜色的纯HTML代码。
模板–红色
/template-red/header.jsp
[Logo Here] This is Template Red Header
/template-red/footer.jsp
This is Template Red Footer
模板–绿色
/template-green/header.jsp
[Logo Here] This is Template Green Header
/template-green/footer.jsp
This is Template Green Footer
3.瓷砖布局
为您的所有网页创建标准的网页布局。
common-layout.jsp
4.身体模板
在主体模板中,您应始终创建两个页面“ user-form.jsp和user-form-body.jsp”以了解主体详细信息,以打破与tile框架耦合的问题。 “ user-form.jsp”用于获取图块定义,并将“正文”内容(user-form-body.jsp)“放入”正文模板。
user-form.jsp
user-form-body.jsp
This is body content
5.瓷砖定义
完成所有模板,创建“ tiles-defs.xml”文件,并为红色模板声明“ company-template”定义。
tile-defs.xml
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.3//EN"
"http://struts.apache.org/dtds/tiles-config_1_3.dtd">
<tiles-definitions>
<definition name="company-template" path="/pages/tiles/common-layout.jsp">
<put name="header" value="/pages/tiles/template-red/header.jsp" />
<put name="footer" value="/pages/tiles/template-red/footer.jsp" />
</definition>
</tiles-definitions>
6.包含TilesPlugin
要使用Struts Tiles框架,必须在Struts配置文件中声明“ TilesPlugin ”插件类。
struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_3.dtd">
<struts-config>
<action-mappings>
<action
path="/User"
type="org.apache.struts.actions.ForwardAction"
parameter="/pages/user/user-form.jsp"/>
</action-mappings>
<plug-in className="org.apache.struts.tiles.TilesPlugin" >
<set-property property="definitions-config"
value="/WEB-INF/tiles-defs.xml"/>
</plug-in>
</struts-config>
7.演示
在上述情况下,使用模板红色。
http:// localhost:8080 / StrutsExample / User.do
要将其更改为绿色模板,只需更新“ tiles-defs.xml”文件。
tile-defs.xml
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.3//EN"
"http://struts.apache.org/dtds/tiles-config_1_3.dtd">
<tiles-definitions>
<definition name="company-template" path="/pages/tiles/common-layout.jsp">
<put name="header" value="/pages/tiles/template-green/header.jsp" />
<put name="footer" value="/pages/tiles/template-green/footer.jsp" />
</definition>
</tiles-definitions>
再次访问
http:// localhost:8080 / StrutsExample / User.do
页眉和页脚颜色已更改(模板为绿色),而磁贴配置文件中仅做了很小的更改。
参考
Struts Tiles文档– http://struts.apache.org/1.x/struts-tiles/index.html
翻译自: https://mkyong.com/struts/struts-tiles-framework-example/