기본 세팅 Tiles 프로젝트 파일
==============================
=================================이론=====================================
컨트롤러생성
template 메뉴에 링크등록
바디생성
dispatcher-servlet.xml 등록
tilesdef.xml 등록 - 타일스 설정
===============================프로젝트===================================
=================================코드=====================================
titlesDemo
src
kr.spring.tiles.controller
IndexController
package kr.spring.tiles.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class IndexController {
@RequestMapping("/index.do")
public String process() {
return "index";
}
}
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class IndexController {
@RequestMapping("/index.do")
public String process() {
return "index";
}
}
Menu1Controller
package kr.spring.tiles.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Menu1Controller {
@RequestMapping("/menu1.do")
public String process() {
return "menu1";
}
}
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Menu1Controller {
@RequestMapping("/menu1.do")
public String process() {
return "menu1";
}
}
Menu2Controller
package kr.spring.tiles.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Menu2Controller {
@RequestMapping("/menu2.do")
public String process() {
return "menu2";
}
}
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Menu2Controller {
@RequestMapping("/menu2.do")
public String process() {
return "menu2";
}
}
Menu3Controller
package kr.spring.tiles.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Menu3Controller {
@RequestMapping("/menu3.do")
public String process() {
return "menu3";
}
}
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Menu3Controller {
@RequestMapping("/menu3.do")
public String process() {
return "menu3";
}
}
WebContent
tiles2def
tiles2def.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN"
"http://tiles.apache.org/dtds/tiles-config_2_1.dtd">
<tiles-definitions>
<definition name="index" template="/WEB-INF/viewtiles2/template/layout.jsp">
<put-attribute name="title" value="Spring Tiles Example"/>
<put-attribute name="menu" value="/WEB-INF/viewtiles2/template/menu.jsp"/>
<put-attribute name="header" value="/WEB-INF/viewtiles2/template/header.jsp"/>
<put-attribute name="body" value="/WEB-INF/viewtiles2/body.jsp"/>
<put-attribute name="footer" value="/WEB-INF/viewtiles2/template/footer.jsp"/>
</definition>
<definition name="menu1" extends="index">
<put-attribute name="body" value="/WEB-INF/viewtiles2/body-menu1.jsp"/>
</definition>
<definition name="menu2" extends="index">
<put-attribute name="body" value="/WEB-INF/viewtiles2/body-menu2.jsp"/>
</definition>
<definition name="menu3" extends="index">
<put-attribute name="body" value="/WEB-INF/viewtiles2/body-menu3.jsp"/>
</definition>
</tiles-definitions>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN"
"http://tiles.apache.org/dtds/tiles-config_2_1.dtd">
<tiles-definitions>
<definition name="index" template="/WEB-INF/viewtiles2/template/layout.jsp">
<put-attribute name="title" value="Spring Tiles Example"/>
<put-attribute name="menu" value="/WEB-INF/viewtiles2/template/menu.jsp"/>
<put-attribute name="header" value="/WEB-INF/viewtiles2/template/header.jsp"/>
<put-attribute name="body" value="/WEB-INF/viewtiles2/body.jsp"/>
<put-attribute name="footer" value="/WEB-INF/viewtiles2/template/footer.jsp"/>
</definition>
<definition name="menu1" extends="index">
<put-attribute name="body" value="/WEB-INF/viewtiles2/body-menu1.jsp"/>
</definition>
<definition name="menu2" extends="index">
<put-attribute name="body" value="/WEB-INF/viewtiles2/body-menu2.jsp"/>
</definition>
<definition name="menu3" extends="index">
<put-attribute name="body" value="/WEB-INF/viewtiles2/body-menu3.jsp"/>
</definition>
</tiles-definitions>
viewtiles2
template
footer.jsp
<%@page contentType="text/html; charset=euc-kr"%>
<div align="center" style="background:yellow;">
company information
</div>
<div align="center" style="background:yellow;">
company information
</div>
header.jsp
<%@page contentType="text/html; charset=euc-kr"%>
<h2 align="center">Spring Tiles Examples!!!</h2>
<h2 align="center">Spring Tiles Examples!!!</h2>
layout.jsp
<%@ page contentType="text/html; charset=euc-kr"%>
<%@ taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><tiles:getAsString name="title" /></title>
</head>
<body>
<table border=0 cellpadding=0 cellspacing=1 bgcolor="#a0a0a0" width="100%">
<tr height=100 valign="middle" bgcolor="#ffffff">
<td colspan=2><tiles:insertAttribute name="header"/></td>
</tr>
<tr height="670" bgcolor="#ffffff">
<td width="15%" valign="top"><tiles:insertAttribute name="menu"/></td>
<td width="85%" align="center"><tiles:insertAttribute name="body"/></td>
</tr>
<tr bgcolor="#ffffff">
<td colspan=2><tiles:insertAttribute name="footer"/></td>
</tr>
</table>
</body>
</html>
<%@ taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><tiles:getAsString name="title" /></title>
</head>
<body>
<table border=0 cellpadding=0 cellspacing=1 bgcolor="#a0a0a0" width="100%">
<tr height=100 valign="middle" bgcolor="#ffffff">
<td colspan=2><tiles:insertAttribute name="header"/></td>
</tr>
<tr height="670" bgcolor="#ffffff">
<td width="15%" valign="top"><tiles:insertAttribute name="menu"/></td>
<td width="85%" align="center"><tiles:insertAttribute name="body"/></td>
</tr>
<tr bgcolor="#ffffff">
<td colspan=2><tiles:insertAttribute name="footer"/></td>
</tr>
</table>
</body>
</html>
menu.jsp
<%@page contentType="text/html; charset=euc-kr"%>
<ul>
<li><a href="index.do">main</a></li>
<li><a href="menu1.do">menu1</a></li>
<li><a href="menu2.do">menu2</a></li>
<li><a href="menu3.do">menu3</a></li>
</ul>
<ul>
<li><a href="index.do">main</a></li>
<li><a href="menu1.do">menu1</a></li>
<li><a href="menu2.do">menu2</a></li>
<li><a href="menu3.do">menu3</a></li>
</ul>
body.jsp
<%@page contentType="text/html; charset=euc-kr"%>
<b>main page body !!!</b>
<b>main page body !!!</b>
body-menu1.jsp
<%@page contentType="text/html; charset=euc-kr"%>
<br />
<br />
menu 1 body location
<br />
<br />
menu 1 body location
body-menu2.jsp
<%@page contentType="text/html; charset=euc-kr"%>
<br />
<br />
menu 2 body location
<br />
<br />
menu 2 body location
body-menu3.jsp
<%@page contentType="text/html; charset=euc-kr"%>
<br />
<br />
menu 3 body location
<br />
<br />
menu 3 body location
dispatcher-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
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-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean class="kr.spring.tiles.controller.IndexController"/>
<bean class="kr.spring.tiles.controller.Menu1Controller"/>
<bean class="kr.spring.tiles.controller.Menu2Controller"/>
<bean class="kr.spring.tiles.controller.Menu3Controller"/>
<bean id="tilesConfigurer"
class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/tiles2def/tilesdef.xml</value>
</list>
</property>
<property name="preparerFactoryClass"
value="org.springframework.web.servlet.view.tiles2.SpringBeanPreparerFactory" />
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.tiles2.TilesView" />
</bean>
</beans>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
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-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean class="kr.spring.tiles.controller.IndexController"/>
<bean class="kr.spring.tiles.controller.Menu1Controller"/>
<bean class="kr.spring.tiles.controller.Menu2Controller"/>
<bean class="kr.spring.tiles.controller.Menu3Controller"/>
<bean id="tilesConfigurer"
class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/tiles2def/tilesdef.xml</value>
</list>
</property>
<property name="preparerFactoryClass"
value="org.springframework.web.servlet.view.tiles2.SpringBeanPreparerFactory" />
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.tiles2.TilesView" />
</bean>
</beans>
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>EUC-KR</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>EUC-KR</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
index.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%
response.sendRedirect(request.getContextPath()+"/index.do");
%>
pageEncoding="EUC-KR"%>
<%
response.sendRedirect(request.getContextPath()+"/index.do");
%>
================================결과값====================================
'스프링3.0' 카테고리의 다른 글
Missing artifact ojdbc:ojdbc:jar:14:compile (0) | 2012.05.18 |
---|---|
스프링 3.0 AOP 에러. 문제 해결 (1) | 2012.05.15 |
Spring3.0 DB (0) | 2012.05.14 |
Spring3.0 View error filedown (0) | 2012.05.14 |
Spring3.0 MVC 웹요청 처리 (0) | 2012.05.14 |