发表于: 2017-05-01 22:22:02
1 1251
今天完成的任务:
中午的时候想砸掉自己的电脑,什么鬼重新建项目,看看是不是是自己的项目有毒.结果还是报错,师兄们看了一下也没有结果.反而是对前端的代码学习了一波.
今天将建tiles框架的过程捋了一下,一是方便查找问题所在,二是以后方便查找复习.
一.首先是引入jar包,目前在官网有两个版本,tiles2和tiles3.因为自己的任务4项目使用的spring的jar包是3.1.1版本,不支持tiles3,所以选择了tiles2.
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils-core</artifactId>
<version>1.8.3</version>
</dependency>
<dependency>
<groupId>commons-digester</groupId>
<artifactId>commons-digester</artifactId>
<version>2.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.8</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.4.2</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-api</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-core</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-servlet</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-template</artifactId>
<version>2.2.1</version>
</dependency>
二.相关spring的xml文件配置,在我的理解,spring是个大管家,新加入一个什么东西进来,都要在它哪里签个到,配置一下.在这里主要是两项,一个是tiles.xml文件的读取,一个是有关于tiles的视图解析.
<!-- 4.配置tiles模板 -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass">
<value>
org.springframework.web.servlet.view.tiles2.TilesView
</value>
</property>
<property name="order" value="1" />
</bean>
<bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/tiles.xml</value>
</list>
</property>
</bean>
以上两项配置到springMVC.xml文件中.
三.tiles.xml文件的配置,文件放在web-inf目录下面
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN" "http://tiles.apache.org/dtds/tiles-config_3_0.dtd">
<tiles-definitions>
<definition name="base.definition" template="/WEB-INF/layout/template.jsp">
<put-attribute name="title" value="" />
<put-attribute name="header" value="/WEB-INF/layout/header.jsp" />
<put-attribute name="body" value="" />
<put-attribute name="footer" value="/WEB-INF/layout/footer.jsp" />
</definition>
<definition name="index" extends="base.definition">
<put-attribute name="title" value="首页"/>
<put-attribute name="body" value="/WEB-INF/views/index.jsp"/>
</definition>
<definition name="occupation" extends="base.definition">
<put-attribute name="title" value="职业"/>
<put-attribute name="body" value="/WEB-INF/views/occupation.jsp"/>
</definition>
</tiles-definitions>
四.拆分模块,主要是将自己的网页归结成模块,并找出重复的部分,然后实现复用.
这个项目中主要分成头部header,内容body,底部footer,其中body是可以变化的.
五.根据模块和tiles.xml文件,写出模板template.jsp.
<%@taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles" %>
<%@ page contentType="text/html; charset=UTF-8" language="java" isELIgnored="false" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0,maximum-scale=1">
<script src="js/jquery-3.1.1.min.js"></script>
<link rel="stylesheet" href="css/bootstrap.min.3.3.7.css">
<script src="js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="css/reset.css">
<link rel="stylesheet" type="text/css" href="css/task8-1.css">
<link rel="stylesheet" type="text/css" href="css/task8-3.css">
<title><tiles:getAsString name="title"/></title>
</head>
<body>
<tiles:insertAttribute name="header"/>
<tiles:insertAttribute name="body"/>
<tiles:insertAttribute name="footer"/>
</body>
</html>
六.在实际运行模板的时候报错依然是500!
明天的计划:
实在不行就先绕过去.明天最后一天学习tiles.
遇到的问题:
检查了一边,过程没有什么问题.怀疑是不是我电脑中毒了,师兄们怀疑是我的环境问题.可是项目没有红X号.并不报错.
收获:
在毫无头绪的情况下,体验了一把坚持意味着什么.加油!
评论