大家好,我是IT修真院上海分院第02期学员,一枚正直善良的Java程序员。
今天给大家分享一下,修真院官网task4任务中可能会使用到的知识点:
tiles框架的理解
1.为什么要使用tiles
我们都知道,JSP中可以通过include标签动态插入一个JSP页面。在了解这个功能后我们就可以实现多个JSP页面共用一个JSP的内容。
那么,如果有一个超级大的电子商务网站,拥有很多个JSP页面,并且每个JSP都引用了同一个JSP的头部和底部。
然后有更新需求,需要在短时间内把所有的JSP页面header中的某个照片,或者logo,或者某个窗口更换成我们所需要的(或者在footer里面加入动图等一些操作)。
如果你只会include标签的话,那这样一条一条的插入,差不多应该是完不成交代下来的任务。又或者是你拼命的高强度工作,总算在规定的时间里快要结束工作的时候,说logo的颜色或大小或位置需要更改,把刚才做的更换成新的,等会就要时,你应该已经昏过去了。。。
那么,要是你了解一个疯狂的产品——tiles的话。
就好像重生了一样,只需要几分钟时间内就可以完成所有的操作。甭管有多少JSP页面,只要修改它们所共有的区域,你都可以迅速的解决,并且非常简单。
本文以SSM框架为实例,进行添加tiles操作。
所有就是jsp页面都放在webapp下面的tiles文件里,文件里都有写路径。
2.需要在pom文件里加入的依赖包
相关依赖包
版本根据自己的需要进行更改,基本操作这三个包就可以。
3.配置一个布局文件
布局文件
其中,ptteng.jsp就是我们的主布局模板,它决定整个网页需要显示的内容以及显示到什么地方。而header.jsp和footer.jsp以及{1}.jsp就是模板里需要显示的头部、尾部和身体三个部分的引用页面。(有时我们也会加上menu.jsp的菜单页面)
至于这儿有个与重不同的地方就是有个{1}.jsp页面,这时使用了EL表达式。由于在这个实例中我们需要添加不同的body,所以根据不同的请求,加载不同的body模块的jsp页面,因此name用*号代替。
简而言之,ptteng.jsp这个页面引用了header.jsp和footer.jsp以及{1}.jsp三个页面。
4.ptteng.jsp页面
主布局页面
header表示在这里插入的header.jsp,footer表示将要在这里插入的footer.jsp。header.jsp和footer.jsp中的内容就根据自己的实际情况写就行了。
5.Tiles视图解析器
最后,我们需要为Tiles配置视图解析器(这个一定不能忘),在MVC的配置文件中添加以下内容:
tiles视图解析器
其中的layout.xml即为前文所建立的布局配置文件,p:order="1"表示优先级,数字越小,解析器的优先级越高。
6.视图的控制器
视图控制器