`
sammor
  • 浏览: 413287 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Tiles2 学习笔记之一

    博客分类:
  • J2SE
阅读更多

引言:

 

       一个jsp页面引发的思想,做web程序的工程师都会知道。web页面可以说很简单,也可以说他很复杂。有的网站做出来的页面很时尚,有的页面却很普通。

       但这些页面里面有着一个共同的物点,他们的每一个页面之间都会有许多公同的部分,如果以一个普通的门户网站来看的话,大致可以看到这样的构造。

            

      这里面页面可以大致分为:Header、Menu、Body、Footer,而我们都知道,正常页面的变化关键在于Body这个区域。但如何来管理这些变化和不变化的区域呢?使我们能更好的去控制这些页面的内容呢?看到这里面有很多人就会想到说那么可以用<jsp:include>这样的标签来引入页面了丫。

      想想,如果用这样的方式的话,你的改变只在于减少了重复的去想部分的代码,但当你用多了之后,你可能都记不清,你在哪里用到Jsp:include了,这给你的修改和维护带来了很大的麻烦。

 

一、何为Tiles2

 

      Tiles2即为复合式视图模式(Composite View pattern), 可以对页面的各个部分通过配置文件来管理。

 

二、Tiles2的快速入门

 

     1、引入jar包

      相关jar可以到官网上下载(http://tiles.apache.org/download.html

      如何使用maven的话,可以更加方便的在POM里面直接添加的。

     

<dependency>
     <groupId>org.apache.tiles</groupId>
     <artifactId>tiles-extras</artifactId>
     <version>2.2.2</version>
</dependency>
   <dependency>
     <groupId>org.apache.tiles</groupId>
     <artifactId>tiles-jsp</artifactId>
     <version>2.2.2</version>
</dependency>
<dependency>
    <groupId>jstl</groupId>
    <artifactId>jstl</artifactId>
    <version>1.1.2</version>
</dependency>
 
<!-- 添加 standard包 -->
<dependency>
    <groupId>taglibs</groupId>
    <artifactId>standard</artifactId>
    <version>1.1.2</version>
</dependency> 
<dependency>
     <groupId>org.slf4j</groupId>
     <artifactId>slf4j-nop</artifactId>
     <version>1.6.1</version>
</dependency>

 

      2、配置文件

 

       a、 创建一个配置文件/WEB-INF/tiles-defs.xml

       b、 web.xml设置监听以在启动服务的时候读取配置文件。

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

<listener>
         <listener-class>org.apache.tiles.web.startup.TilesListener</listener-class>
</listener>

      

     3、创建jsp页面结构

+webapp 
      +views
          -header.jsp
          -body.jsp
          -footer.jsp
       +layout
          -mainLayout.jsp
       -index.jsp    

    

    header.jsp

//header.jsp 
<html>
<body>
       <div align="center"><b><i>This is a header</i></b></div>
</body>
</html> 

   

    body.jsp

<html>
<body>
       <h3>Hello World!,this is the Body</h3>
</body>
</html>

 

    footer.jsp  

<html>
<body>
      <div align="center"><b><i>This is a footer</i></b></div>
</body>
</html>

 

    layout.jsp

<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><tiles:getAsString name="title" /></title>
</head>
<body>
    <table border="0" width="950" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">
    <tr>
        <td> <tiles:insertAttribute name="header" />  </td>
    </tr> 
    <tr>
        <td><tiles:insertAttribute name="footer" /></td>
    </tr>
    </table>
</body>
</html>

  

    index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %>  
<tiles:insertDefinition name="layout" />  

 

   配置进tomcat服务器中

   运行inde.jsp页面。可以看到运行成功的页面了。

   

   Tiles2的基本结构就是如此了。

   

   END;

分享到:
评论

相关推荐

    struts2学习笔记十八(第18讲.Struts2深入探索)

    Struts2的核心特性之一是拦截器,它允许开发者定义一系列的处理逻辑,这些逻辑会在Action执行前后被调用。拦截器可以用来实现如日志记录、权限验证、事务管理等功能。通过自定义拦截器,开发者能够灵活地扩展框架...

    struts2学习笔记六(第6讲.Struts2的输入校验续一)

    Interceptor是Struts2的核心特性之一,它们按预定义的顺序执行,可以处理各种任务,如日志、权限检查和数据验证等。Struts2的`ValidatorInterceptor`负责执行验证逻辑,它会根据配置文件中的规则对请求参数进行检查...

    struts学习笔记(四)

    在Struts框架中,Action类是核心组件之一,它是业务逻辑的执行者。每个HTTP请求都会映射到一个特定的Action,处理请求并返回相应的结果。ActionForm是用于传递请求参数到Action的载体,它可以封装用户的输入数据。 ...

    高级程序员学习笔记.rar

    这些学习笔记涵盖了多个重要的IT技术领域,主要针对高级程序员,旨在深入理解和掌握各种编程语言、框架和数据库管理系统。以下是对每个主题的详细说明: 1. **C++**:C++是一种中级语言,由C语言发展而来,支持面向...

    struts学习笔记

    "Struts学习笔记"显然是一个针对Struts框架深入学习的资料集合,旨在帮助初学者从基础开始,逐步掌握Struts的核心概念和实践技巧。 在学习Struts的过程中,有几个关键知识点是必须理解的: 1. **MVC模式**:MVC是...

    ssh学习笔记

    Struts 1.x 是最早的MVC框架之一,它简化了JSP与Servlet之间的交互。`struts1.x入门[修订版].doc`可能涵盖了以下几个方面: 1. **ActionServlet**:作为Struts的核心,处理HTTP请求并调用相应的Action。 2. **配置...

    传智播客Struts2学习资料

    本资料包包含了关于Struts2的学习笔记和代码示例,旨在帮助初学者或进阶者深入理解并熟练掌握这一框架。 笔记部分可能涵盖以下知识点: 1. **Struts2基础**:介绍Struts2的基本概念,包括Action、Result、...

    达内的全部笔记达内的全部笔记

    Struts1.x note.txt**:Struts1是最早的Java Web MVC框架之一,笔记可能讲解Action、Form Bean、配置文件、Interceptor、Tiles组件等核心概念。 9. **16. EJB note.txt**:EJB(Enterprise JavaBeans)是Java EE中...

    J2EE三大框架_笔记(个人收藏)

    Spring是Java领域最流行的轻量级框架之一,它提供了一个全面的编程和配置模型,用于简化企业级应用的开发。Spring的核心是依赖注入(Dependency Injection, DI),它允许组件之间的松耦合,提高了代码的可测试性...

    struts 培训班源码及笔记

    Struts框架的亮点之一是其强大的标签库,这使得在JSP页面上操作业务数据变得简单。通过笔记,你可以学习到如何使用`&lt;s:property&gt;`、`&lt;s:form&gt;`、`&lt;s:iterator&gt;`等标签来显示、收集和处理用户输入,以及如何自定义...

    元天天三大框架笔记

    在学习过程中,可以结合“jQuery.txt”文件来理解前端与后端如何协同工作,尽管jQuery不是三大框架之一,但它在Web开发中的作用不可忽视,尤其是在处理DOM操作、AJAX请求等方面。 总结来说,这个笔记集合将带领读者...

    struts教程指南

    - "struts笔记.pdf":这是一份个人学习笔记,可能包含了一些实践经验和技巧,有助于你快速上手和解决问题。 通过这些资源,你将能够逐步掌握Struts框架,从创建简单的Action到构建复杂的MVC应用,从而在Java Web...

    win7从入门课程之认识win7

    磁贴(Tiles)虽不是Windows 7的特色,但它的前身——“超级按钮”(Super Bar)在Windows 7中起到了类似的作用,集成了开始按钮、搜索框和常用程序,使得桌面空间利用更为高效。 安全性是操作系统的重要考量,...

Global site tag (gtag.js) - Google Analytics