หลังจากที่ลองทำตาม step by step ของ Spring แล้วก็น่าจะเข้าใจการทำงานของ Spring ในระดับหนึ่ง แต่มันก็แค่เริ่มต้นนะครับ
คราวนี้ มาลองเอา Tiles มาแปะเข้าไปใน Spring ดูบ้าง
Tiles เป็นส่วนของการทำ Template โดยจะแยกออกเป็น 2 ส่วนคือ
1 tiles-def เป็นส่วนที่บอกว่า ถ้าเข้ามาที่ link นี้จะมีใช้ resource อะไรบ้าง เช่น ใช้ javascript file ใด, ใช้ template file ใด
2. template file ก็ตามชื่อนั้นแหละครับ
1./WEB-INF/tiles-def.xml
<tiles-definitions>
<definition name=".template" template="/WEB-INF/tiles/template_main2.jsp">
<put-attribute name="title" value="" />
<put-attribute name="script" value="" />
<put-attribute name="action" value="" />
<put-attribute name="content" value="" />
</definition>
<definition name="hello" extends=".template">
<put-attribute name="title" value="Home Pages" />
<put-attribute name="script" value="/WEB-INF/js/*.js" />
<put-attribute name="action" value="hello" />
<put-attribute name="content" value="/WEB-INF/jsp/hello.jsp" />
</definition>
<tiles-definitions>
2. /WEB-INF/tiles/template_main.jsp
<html>
<head>
<title>Spring App : <tiles:getAsString name="title" /></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Style-Type" content="text/css">
</head>
<body>
<h1> This from template</h1>
<tiles:insertAttribute name="content"/>
</body>
</html>
แค่นี้ หลังเรียก เรียกใช้ controller ที่ return ModelView เป็น hello ก็จะผ่าน Tiles และ แสดงผลตามที่เรา config เอาไว้ครับ