美文网首页IT修真院_JAVA
Tiles框架使用心得

Tiles框架使用心得

作者: ba1d04276512 | 来源:发表于2017-10-24 21:52 被阅读112次

    大家好,我是IT修真院上海分院第3期学员,一枚正直善良的java程序员,今天给大家分享一下,修真院java任务中的一个知识点:Tiles框架使用。

    首先Tiles框架主要是为了创建可重用的组件。怎么理解呢,这里的组件指的是jsp代码,很多时候比如3个jsp文件中会出现相同的header或body或footer,那么这就造成了代码重复,而通过Tile框架可将3个页面中相同的header和footer分离出来放到一个jsp中作为组件以达到重用的目的。

    下面贴代码解说,我有2个jsp,这两个页面中的header(首部)和footer(底部)都是一致的如下图:

    首部图 底部图

    修真院官网绝大多数页面的首部和底部都和上图中的一致,如果每个页面都把首部和底部写一遍会造成大量的 重复代码,因此比较好的做法是使用Tiles框架将可重用的部分分离出来形成一个组件。

    下面是分离的首部和底部代码:

    jsp代码文件说明

    footer.jsp,该jsp文件中是2个页面共有的底部分离出来的代码:

    footer分离代码

    header.jsp,该jsp文件同样是2个页面共有的首部分离出来的代码:

    header分离代码

    至此,已将两个页面中共有的部分分离出来了,分离出来以后肯定是要进行重组形成一个新的页面的。首部和底部有了,那么还缺一个body部分,而body部分两个页面是不同的,因此需各自定义<body>的jsp文件。

    两个页面分别是首页和职业介绍页面,两个页面中的首部和底部都相同如上所述。home.jsp是首页的<body>部分,IntroductionJob.jsp是职业介绍页面的<body>部分。

    上面已经讲解了如何进行分离,下面讲讲如何进行重组形成一个新的jsp页面。

    maven配置依赖:

    <dependency>

       <groupId>org.apache.tiles</groupId>

       <artifactId>tiles-extras</artifactId>

       <version>3.0.7</version>

    </dependency>

    <dependency>

       <groudId>org.apache.tiles</groudId>

       <artifactId>tiles-servlet</artifactId>

       <version>3.0.7</version>

    </dependency>

    <dependency>

       <groudId>org.apache.tiles</groudId>

       <artifactId>tiles-jsp</artifactId>

       <version>3.0.7</version>

    </dependency>

    在SpringMvc配置文件中配置Tiles视图解析器,视图解析器是为了解析controller返回的值来匹配路径来找到对应的jsp的。

    Tiles框架视图解析器

    tiles配置文件tiles.xml(可随意),放置在WEB-INF目录下

    Tiles框架配置文件

    上图中的name为templet的是基础模板,并给这个模板填充了header和footer。然后name为*.page的从templet继承,同样拥有了header和footer,并添加了body部分,最终形成了一个拥有header,body,footer的jsp页面。其中values="/jsp/{1}.jsp/中的{1}是获取*匹配的内容,因为我的controller处理完毕返回了一个home.jsp,因此Tiles框架视图解析器起作用找到该Tiles的定义并重组页面形成新的jsp并将model交给该jsp处理,该jsp渲染视图完毕后返回。

    下图是基础模板:

    及触摸板

    在tiles配置中给基础模板填充了footer和header会自动将footer.jsp和header.jsp中的内容拼接到该模板中,然后*.page从模板继承又是另一个jsp,并填充了body部分就形成了一个填充了header,footer,body的新页面。

    今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

    技能树.IT修真院“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

    这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~我的邀请码:16318412,或者你可以直接点击此链接:http://www.jnshu.com/login/1/16318412

    相关文章

      网友评论

        本文标题:Tiles框架使用心得

        本文链接:https://www.haomeiwen.com/subject/oegxpxtx.html