`

struts1整合tiles详解+demo

阅读更多

1.用myeclipse建一个web工程

 

2.导入struts1.2的框架模板

 

3.创建所需要的java类和jsp文件及tiles-defs.xml

 

4.配置struts-config.xml的plug-in

 

工程图如下:

     Struts1.2+tiles1工程图

 

5.LogonAction.java

 

package com.cenwave.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;
import org.apache.struts.actions.DispatchAction;

public class LogonAction extends DispatchAction
{
 public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,
         HttpServletResponse response)
 {
  DynaActionForm loginActionForm=(DynaActionForm)form;
  String username=(String)loginActionForm.get("username");
  String password=(String)loginActionForm.get("userpass");
  if("test".equals(username)&&"test".equals(password))
  {
            request.setAttribute("username",username);  
   return mapping.findForward("show");
  }
  return null;
 }
}

 

6.basePage.jsp

 

<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>

<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles"%>
<html>
 <head>
  <tiles:useAttribute name="title" />
  <title><bean:write name="title" /></title>
 </head>
 <body>
  <div align="center">
   <table border="1" align="center">
    <tr>
     <td  colspan="2" align="center" valign="top" width="500px" height="100px" bgcolor="#666666">
      <tiles:insert attribute="header" />
     </td>
    </tr>
    <tr>
     <td  align="left" width="100px" height="300px" bgcolor="#ff80c0">
      <!-- 系统菜-->
      <tiles:insert attribute="menu" />
     </td>
     <td align="right"  width="400px" height="300px" bgcolor="#00ff00">
      <!-- 面具体的内容-->
      <tiles:useAttribute name="content" />
      <tiles:insert attribute="content" />

     </td>
    </tr>
    <tr>
     <td  align="center" colspan="2" bgcolor="#FF0066" height="100px">
      <!-- copyright内容-->
      <tiles:insert attribute="footer" />
     </td>
    </tr>
   </table>
  </div>
 </body>
</html>

 

7.footer.jsp  &&  menu.jsp  &&  header.jsp

 

footer.jsp内容:   <p>footer</p>

 

menu.jsp内容:  

  <div><ul>
           <li><a href="login.do">等一会</a></li>
           </ul>

  </div>

 

header.jsp内容:   <p>header</p>

 

8.content_1.jsp  &&  content_2.jsp  &&  content_3.jsp

 

content_1.jsp内容:  <center>content_1</center>

 

content_2.jsp内容:

 

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<div>
    <form action="/s1tiles/logon.do" method="post">
     <table>
      <tr>
          <td>用户名:</td><td><input type="text" name="username" id="uname"/></td>
      </tr>
      <tr>
          <td>密  码:</td><td><input type="password" name="userpass" id="upass"/></td>
      </tr>
      <tr>
          <td colspan="2"><input type="submit" value="登陆"/></td>
      </tr>
     </table>
    </form>
</div>

 

content_3.jsp内容:

 

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<p>

     欢迎,热烈欢迎<bean:write name="username" />!<br>
</p>

 

9.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>
  <form-bean name="loginForm"
   type="org.apache.struts.action.DynaActionForm">
   <form-property name="username" type="java.lang.String" />
   <form-property name="userpass" type="java.lang.String" />
  </form-bean>
 </form-beans>

 <global-exceptions />
 <global-forwards />
 <action-mappings>
     <!-- forward="gologin" gologin 为 definition name="gologin" 定义 -->
  <action forward="gologin" path="/login" />
  <action path="/logon"
          input="gologin"
          name="loginForm"
          scope="request"
          type="com.cenwave.action.LogonAction">
          <forward name="show" path="logonok" />
   </action>

 </action-mappings>

 <message-resources parameter="com.cenwave.ApplicationResources" />

 <!-- Tiles plug-in setting -->
 <plug-in className="org.apache.struts.tiles.TilesPlugin">
  <set-property property="definitions-config"
   value="/WEB-INF/tiles-defs.xml" />
  <set-property property="moduleAware" value="true" />
 </plug-in>
</struts-config>

 

10.tiles-def.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">
<!-- Definitions for Tiles  -->

<tiles-definitions>

 <!--定义一个复合页面-->
 <definition name="basePage" template="/base/basePage.jsp">
 <!-- <definition name="basePage" path="/base/basePage.jsp"> -->
  <put name="title" value="${title}" />
  <put name="header" value="/common/header.jsp" />
  <put name="menu" value="/common/menu.jsp" />
  <put name="content" value="${content}" />
  <put name="footer" value="/common/footer.jsp" />
 </definition> 
 <!--定义应用的首页面-->
 <definition name="index" extends="basePage">
  <put name="title" value="FistPage" />
  <put name="content" value="/content/content_1.jsp" />
 </definition>
 
 <!--定义登陆页面-->
 <definition name="gologin" extends="basePage">
  <put name="title" value="GoLoginPage" />
  <put name="content" value="/content/content_2.jsp" />
 </definition>
 
 <!--定义登陆成功页面-->
 <definition name="logonok" extends="basePage">
  <put name="title" value="LogonOKPage" />
  <put name="content" value="/content/content_3.jsp" />
 </definition>
</tiles-definitions>

 

最后上传个工程,自己去看效果吧!

分享到:
评论

相关推荐

    struts2.0 整合tiles 配置

    ### Struts2.0 整合 Tiles 配置详解 #### 一、概述 Struts2框架是基于Java的企业级Web应用开发框架之一,而Tiles则是一个用来组织页面布局的强大工具。将Struts2与Tiles结合使用,可以更加灵活地管理页面结构,实现...

    struts2.2+velocity+tiles+spring3+mybatis3.05整合

    总之,"struts2.2+velocity+tiles+spring3+mybatis3.05整合"实例展示了Java Web开发中的典型技术栈集成,为开发者提供了高效、稳定的开发环境,有助于提升项目开发的速度和质量。通过学习和实践这个实例,开发者可以...

    Struts1+Spring2+Hibernate2整合详细例子

    在Struts1中,Action类作为控制器,接收用户请求,处理业务逻辑,并通过ValueStack或Tiles组件来更新视图。 Spring2则是Spring框架的一个版本,它提供了一个全面的编程和配置模型,用于简化企业级Java应用的开发。...

    jbpm4整合struts2+spring2.5+hibernate3.3

    **jbpm4整合struts2+spring2.5+hibernate3.3** 是一个经典的Java企业级应用集成框架,用于构建业务流程管理系统。jbpm4是Business Process Management(业务流程管理)的一个开源框架,它允许开发者设计、执行、监控...

    ssm整合例子(spring3 + struts2 + mybatis3 + tiles + dwr3注解)

    整合spring3 + struts2 + mybatis3 + tiles + dwr3 这几个流行的框架。 spring3,struts2,dwr3都是用的注解,tiles与mybatis是采用的xml配置。

    Struts+hibernate+spring+tiles+validator的整合

    1. 配置Struts:在struts-config.xml中定义Action和ActionMapping,指定请求的处理类。 2. 集成Hibernate:配置hibernate.cfg.xml,设置数据库连接,映射实体类到数据库表。 3. 使用Spring管理Bean:在...

    struts2+spring2+hibernate3+tiles+freemarker+ibatis 实现

    资源 struts2+spring2+hibernate3+tiles+freemarker+ibatis 架构图 的具体实现,注意没有java源文件,大家可以看一下配置,具体实现大家不防试一把 &lt;br&gt;下载架构图一目了然哦:...

    Struts2+Tiles

    Struts2+Tiles是一个常用的Java Web开发框架组合,主要用于构建结构清晰、可维护性强的Web应用。Struts2是基于MVC(Model-View-Controller)设计模式的开源框架,而Tiles则是Struts2的一个视图层扩展,它提供了一种...

    Struts+Spring+Hibernate+Ajax的Demo

    在这个"Struts+Spring+Hibernate+Ajax的Demo"中,开发者使用了这些技术来创建一个功能丰富的示例应用。下面将详细阐述这四种技术以及DWR和Dojo在其中的作用。 **Struts** 是一个开源的MVC(Model-View-Controller)...

    struts1+spring2.5+hibernate整合jar包

    整合Struts1时,需要的jar包包括struts-core、struts-taglib、struts-tiles等。 2. **Spring2.5框架**: Spring2.5是Spring框架的一个版本,它提供了一个全面的依赖注入容器,允许开发者轻松管理对象及其依赖关系...

    struts1+spring2.5.6+jdbc配置

    Struts1的核心组件包括ActionServlet、Action、ActionForm、ActionMapping和Tiles等,它们共同协作以实现强大的视图控制和业务逻辑分离。 Spring 2.5.6 是Spring框架的一个旧版本,尽管如此,它依然具有很高的稳定...

    dwr2.0整合Struts1.3+hibernate3.1+spring2.5的项目

    2. **Spring与Struts整合**:Spring可以通过Struts ActionServlet拦截器实现依赖注入,将业务对象注入到Struts Action中,同时可以使用Spring的AOP来处理全局事务。 3. **DWR与Spring整合**:DWR可以与Spring无缝...

    struts2.1.8与tiles2.0 demo

    Struts2.1.8与Tiles2.0 Demo是一个经典的Java Web开发示例,它结合了两个强大的框架,Struts2作为MVC(模型-视图-控制器)框架,Tiles2用于页面布局管理。这个Demo旨在帮助开发者理解如何在实际项目中有效地利用这两...

    Struts 2+Hibernate+Spring整合开发技术详解 12~17章

    这本由蒲子明编著的《Struts 2+Hibernate+Spring整合开发技术详解》深入探讨了如何将这三个框架有效结合,以构建高效、模块化的Web应用。书中第12到17章的内容涵盖了以下几个关键知识点: 1. **Struts 2框架**: -...

    Struts1-tiles标签

    Struts1中的Tiles标签库是一种强大的布局管理工具,旨在提高Web应用的可重用性、可扩展性和可维护性。Tiles框架是Apache Software Foundation发起的一个开源项目,它为开发者提供了创建复合式网页的能力,允许在运行...

    开发者突击_Java+Web主流框架整合开发_J2EE+Struts+Hibernate+Spring+源代码

    《开发者突击:Java+Web主流框架整合开发》一书涵盖了J2EE、Struts、Hibernate以及Spring这四个在Web开发领域极为重要的技术框架。这些框架的整合使用,旨在提高开发效率,实现企业级应用的快速构建。以下是这些框架...

    struts2 + spring + tiles + log4j blank framewotk

    Struts2、Spring、Tiles和Log4j是Java Web开发中的四大核心框架,它们共同构建了一个强大且灵活的基础架构,适用于构建复杂的企业级应用程序。以下将详细解释这四个框架及其在实际开发中的应用。 **Struts2框架**:...

    struts1+spring+hibernate整合所用全部jar包

    Struts1、Spring和Hibernate是Java Web开发中的三大框架,它们各自解决了一部分问题,而将它们整合在一起,可以构建出高效、灵活的企业级应用程序。这里我们主要探讨这三者整合时所需的核心jar包以及它们的功能。 ...

    struts2+spring2+hibernate3+tiles+freemarker+ibatis

    架构图,大家可以完善

    Struts2与tiles集成示例

    1. **Integration Setup**: 集成Struts2和Tiles需要添加相应的jar包到项目类路径中,包括struts2-core、struts2-tiles-plugin等。 2. **Tiles插件配置**: 在Struts2的配置文件中,需要启用Tiles插件,并指定Tiles的...

Global site tag (gtag.js) - Google Analytics