Struts1.2、Struts1.3和Struts2.0下Tiles的配置

2024-04-19 23:48

本文主要是介绍Struts1.2、Struts1.3和Struts2.0下Tiles的配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

struts和Tiles配置取决于两者的版本,就是所需的配置文件和文件的写法有些不同。

 

Struts1.2和Tiles1.2:

如果使用MyEclipse自带的Struts1.2,那么就是使用自带的Tiles1.2

 

1.将struts.jar下META-INF/tlds/struts-tiles.tld文件复制到WebRoot/WEB_INF下,这是tiles语法解析文件;在web。xml中加入
 <jsp-config>
  <taglib>
   <taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>
   <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
  </taglib>
 </jsp-config>
2.建立模板:在WebRoot下建立layout文件夹存放tiles模板,建立layout。jsp,填入如下代码
 <%@ page contentType="text/html; charset=GBK"%>
 <%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles"%>
 <html>
  <head>
   <title><tiles:insert name="title"/></title>
   <link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/layout.css">
  </head>
  <body>
   <div id="head">
    <tiles:insert attribute="head"></tiles:insert>
   </div>
   <div id="content">
    <tiles:insert attribute="content"></tiles:insert>
   </div>
  </body>
 </html>
 上面代码将页面简单分成上下两块,head和content
3.建立tiles配置文件:在WebRoot/WEB_INF下面建立tiles-definition.xml(文件名可自己换但是要与struts-config.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="layout_home" path="/layout/layout_home.jsp">//这一块definition是tiles的模板定义,其他的页面可以继承这个模板
  <put name="title" type="string" value="XX管理系统" />
  <put name="head" value="/header.jsp" />
  <put name="content" value="/content.jsp" />
 </definition>
 <definition name="appload" extends="layout_home">//extends继承了layout_home,head和content可以直接使用。do
  <put name="head" value="/login.do" />
  <put name="content" value="/appload.jsp" />
 </definition>
</tiles-definitions>
4.将tiles与Struts关联:在struts-config。xml的</action-mappings>后加入
 <plug-in className="org.apache.struts.tiles.TilesPlugin">//这个类可在struts。jar中找到
  <set-property property="definitions-config"
   value="/WEB-INF/tiles-definition.xml" />//value就是第三部中的文件名
  <set-property property="definitions-debug" value="2" />
  <set-property property="definitions-parser-details" value="2" />
  <set-property property="definitions-parser-validate"
   value="true" />
 </plug-in>
  
 struts-config。xml中访问tiles-definition.xml,在action map中加入
 <action path="/login"
   type="com.test.loginAction">
   <forward name="suc" path="login" />
 </action>
 //path是tiles-definition.xml中一个definition name

Struts1.3和Tiles1.3:

如果使用MyEclipse自带的Struts1.3,那么就是使用自带的Tiles1.3
步骤同struts1.2,只有一点不同,第一步在web。xml中加入
  <init-param>
   <param-name>config</param-name>
   <param-value>/WEB-INF/struts-config.xml</param-value>
  </init-param>


Struts2.0和Tiles2.x:
需要tiles包:
tiles-api-2.1.2.jar
tiles-core-2.1.2.jar
tiles-jsp-2.1.2.jar
tiles-servlet-2.1.2.jar(struts2的包当然也要加,我用的是struts2.0.8)

1.tiles-jsp-2.1.2.jar下META-INF/tld/tiles-jsp.tld文件复制到WEB-INF下,这是解析tiles的文件;(tiles2.0时tld文件在tiles-core.jar包下)
2.建立模板jsp:WebRoot/layout/layout.jsp
<%@ page contentType="text/html; charset=GBK"%>
<%@ taglib uri="/WEB-INF/tiles-jsp.tld" prefix="tiles"%>
<html>
 <head>
  <title><tiles:insertAttribute name="title"/></title>
  <link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/layout.css">
 </head>
 <body>
  <div id="head">
   <tiles:insertAttribute name="head"></tiles:insertAttribute>
  </div>
  <div id="content">
   <tiles:insertAttribute name="content"></tiles:insertAttribute>
  </div>
 </body>
</html>
注意标签和tiles1.x版本的区别
3.建立tiles配置文件,WebRoot/WEB-INF/tiles-definition.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tiles-definitions PUBLIC
        "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">

<tiles-definitions>
 <definition name="layout" template="/layout/layout_home.jsp">  
  <put-attribute name="title" type="string" value="xx管理系统" />
  <put-attribute name="head" value="/head.jsp" />
  <put-attribute name="content" value="/content.jsp" />
 </definition>

 <!-- home page bakuse-->
 <definition name="login" extends="layout">
  <put-attribute name="content" value="/login.jsp" />
 </definition>
</tiles-definitions>
同样,标签和以前的有区别
4.关联Web。xml和tiles:Web。xml加入下列代码
 <context-param>
  <param-name>org.apache.tiles.CONTAINER_FACTORY</param-name>
  <param-value>
   org.apache.struts2.tiles.StrutsTilesContainerFactory
  </param-value>
 </context-param>

 <context-param>
  <param-name>
   org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
  </param-name>
  <param-value>/WEB-INF/tiles-definition.xml</param-value>
 </context-param>

 <listener>
  <listener-class>
   org.apache.struts2.tiles.StrutsTilesListener
  </listener-class>
 </listener>

5.struts.xml访问tiles-definition.xml,如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
 <package name="test" namespace="/" extends="tiles-default">
  <action name="hello" class="com.struts2.demo.HelloAction">
   <result name="suc" type="tiles">
    login
   </result>
   <result name="fal">
    /errors.jsp
   </result>
  </action>
 </package>
</struts>

//type="tiles"中login是tiles-definition.xml中一个definition name

这篇关于Struts1.2、Struts1.3和Struts2.0下Tiles的配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/918766

相关文章

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

SpringBoot多数据源配置完整指南

《SpringBoot多数据源配置完整指南》在复杂的企业应用中,经常需要连接多个数据库,SpringBoot提供了灵活的多数据源配置方式,以下是详细的实现方案,需要的朋友可以参考下... 目录一、基础多数据源配置1. 添加依赖2. 配置多个数据源3. 配置数据源Bean二、JPA多数据源配置1. 配置主数据

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过

如何使用Nginx配置将80端口重定向到443端口

《如何使用Nginx配置将80端口重定向到443端口》这篇文章主要为大家详细介绍了如何将Nginx配置为将HTTP(80端口)请求重定向到HTTPS(443端口),文中的示例代码讲解详细,有需要的小伙... 目录1. 创建或编辑Nginx配置文件2. 配置HTTP重定向到HTTPS3. 配置HTTPS服务器

SpringBoot中配置Redis连接池的完整指南

《SpringBoot中配置Redis连接池的完整指南》这篇文章主要为大家详细介绍了SpringBoot中配置Redis连接池的完整指南,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以... 目录一、添加依赖二、配置 Redis 连接池三、测试 Redis 操作四、完整示例代码(一)pom.

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

如何在Mac上安装并配置JDK环境变量详细步骤

《如何在Mac上安装并配置JDK环境变量详细步骤》:本文主要介绍如何在Mac上安装并配置JDK环境变量详细步骤,包括下载JDK、安装JDK、配置环境变量、验证JDK配置以及可选地设置PowerSh... 目录步骤 1:下载JDK步骤 2:安装JDK步骤 3:配置环境变量1. 编辑~/.zshrc(对于zsh