160603: 57회차
Programming
2016. 6. 3. 12:40
종료하기 전 티스토리 네이버 로그아웃 할 것
1. 툴
동일
추가시:
2. 폴더
동일
추가시:
3. 사용할 사이트
동일
추가시:
4. 공부하는 것
[32][spring][board] Tiles2
[01] Maven- Tiles2 설정
1. http://mvnrepository.com/ -Maven 저장소 사이트에서
tiles2검색결과중 2.0.0 버전을 선택후 pom.xml에 추가
<dependency>
<groupId>org.thymeleaf.extras</groupId>
<artifactId>thymeleaf-extras-tiles2</artifactId>
<version>2.0.0</version>
</dependency>
1. http://mvnrepository.com/ -Maven 저장소 사이트에서
tiles2검색결과중 2.0.0 버전을 선택후 pom.xml에 추가
<dependency>
<groupId>org.thymeleaf.extras</groupId>
<artifactId>thymeleaf-extras-tiles2</artifactId>
<version>2.0.0</version>
</dependency>
http://mvnrepository.com/ 요기서 검색해서 디펜던시를 검색해서 복붙 해야함
2. 기본적인 설정
- TilesConfigurer를 이용하여 Tiles 2 레이아웃 설정 파일 명시
- UrlBasedViewResolver의 viewClass 프로퍼티를 TilesView로 지정
[02] Tiles 2 구현
1. WEB-INF/spring/root_context.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- Root Context: defines shared resources visible to all other web components -->
<bean id="tilesconfigurer"
class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/spring/tiles2exam.xml</value>
</list>
</property>
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.tiles2.TilesView</value>
</property>
</bean>
</beans>
2. WEB-INF/spring/tiles2exam.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Aapche Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="main" template="/WEB-INF/views/templates/template.jsp">
<put-attribute name="header" value="/WEB-INF/views/templates/header.jsp" />
<put-attribute name="footer" value="/WEB-INF/views/templates/footer.jsp" />
</definition>
<definition name="/board/list" extends="main">
<put-attribute name="title" value="Spring3.2 Example board 목록" ></put-attribute>
<put-attribute name="body" value="/WEB-INF/views/board/boardList.jsp" />
</definition>
<definition name="/board/create" extends="main">
<put-attribute name="title" value="Spring3.2 Example board 생성" ></put-attribute>
<put-attribute name="body" value="/WEB-INF/views/board/boardCreate.jsp" />
</definition>
<definition name="/board/update" extends="main">
<put-attribute name="title" value="Spring3.2 Example board 수정" ></put-attribute>
<put-attribute name="body" value="/WEB-INF/views/board/boardUpdate.jsp" />
</definition>
</tiles-definitions>
<!-- 데피니션 풋 어트리뷰트 같은 것이 왜 필요하냐면 안에 내용을 포함시켜줘야 하니까 'ㅅ'? -->
[02] Layout File
1. 특정페이지별 layout :목록,생성폼,수정폼 등
>>>>> /WEB-INF/views/templates/template.jsp
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<html>
<head>
<title><tiles:getAsString name="title"/></title>
</head>
<body>
<tiles:insertAttribute name="header"></tiles:insertAttribute>
<tiles:insertAttribute name="body"></tiles:insertAttribute>
<tiles:insertAttribute name="footer"></tiles:insertAttribute>
</body>
</html>
3. home.jsp(기본페이지)
>>>>> /WEB-INF/views/home.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
<html>
<head>
<title>Home</title>
</head>
<body>
<h1>
Spring 3.3.0, Tiles2 기반 WEBTEST
</h1>
<P> The time on the server is ${serverTime}. </P>
</body>
</html>
그리고 영원한 업데이트
재미있는 css
5. 수업
진도:
hw:
6. 할것
spring_address tiles2 설정
1. pom.xml lib 추가
2. root-context.xml
<bean> 두 개 설정 - 기존 view Reserver 없앤다.
3. tile2exma.xml 설정
4. template 폴더 및 파일 가져와서 수정
5. controller view 이름 변경
★servlet-context에 가서 빈즈 주석처리 해줘야함
//<bean> 두 개 설정 - 기존 view Reserver 없앤다.
'Programming' 카테고리의 다른 글
160608: 59회차 (0) | 2016.06.08 |
---|---|
160607: 58회차 (0) | 2016.06.07 |
160602: 56회차 (0) | 2016.06.02 |
160601: 55회차 (0) | 2016.06.01 |
160531: 54회차 (0) | 2016.05.31 |