📜  Spring MVC Tiles示例(1)

📅  最后修改于: 2023-12-03 14:47:33.673000             🧑  作者: Mango

Spring MVC Tiles示例

本文将介绍如何使用Spring MVC和Tiles框架创建Web应用程序,当然这需要一定的Spring MVC基础知识。

什么是Tiles框架?

Tiles框架是一个Java得Web应用程序框架,它允许将Web应用程序的界面划分为不同的分块,这些分块可以被重复使用。这些分块被称为Tiles,因此该框架得名为Tiles框架。

环境

在开始创建Spring MVC Tiles应用程序之前,我们需要准备以下环境:

  1. JDK
  2. Apache Maven
  3. Spring MVC
  4. Tiles框架
创建Spring MVC Tiles应用程序

1.创建Maven项目。您可以使用Eclipse,IntelliJ IDEA或其他Java IDE创建Maven项目。在此过程中,您需要指定以下Maven坐标:

<groupId>com.examples</groupId>
<artifactId>spring-tiles-example</artifactId>
<version>1.0-SNAPSHOT</version>

2.添加Spring MVC和Tiles框架。可以通过Maven将其添加到pom.xml文件中

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-webmvc</artifactId>
  <version>5.1.0.RELEASE</version>
</dependency>

<dependency>
  <groupId>org.apache.tiles</groupId>
  <artifactId>tiles-jsp</artifactId>
  <version>3.0.8</version>
</dependency>

3.创建Tiles配置文件。在项目的src/main/webapp/WEB-INF文件夹下创建tiles.xml文件

<tiles-definitions>
       <definition name="base.definition" template="/WEB-INF/views/layout.jsp">
           <put-attribute name="header" value="/WEB-INF/views/header.jsp" />
           <put-attribute name="menu" value="/WEB-INF/views/menu.jsp" />
           <put-attribute name="body" value="" />
           <put-attribute name="footer" value="/WEB-INF/views/footer.jsp" />
       </definition>
       <definition name="hello.tiles" extends="base.definition">
           <put-attribute name="body" value="/WEB-INF/views/hello.jsp" />
       </definition>
</tiles-definitions>

4.创建Spring Mvc配置文件

<mvc:annotation-driven />

<bean
      class="org.springframework.web.servlet.view.tiles3.TilesConfigurer">
      <property name="definitions">
            <util:list>
                  <value>/WEB-INF/tiles.xml</value>
            </util:list>
            </property>
</bean>

<bean class="org.springframework.web.servlet.view.tiles3.TilesViewResolver" />

5.创建控制器(HelloController)

@Controller
public class HelloController {
       @RequestMapping(value = "/hello", method = { RequestMethod.GET, RequestMethod.POST })
       public String hello(Model model) {
              model.addAttribute("message", "Hello World!");
              return "hello.tiles";
       }
}

6.创建JSP视图。在项目的src/main/webapp/WEB-INF/views文件夹下创建以下文件

layout.jsp

<html>
<head>
    <title>Tiles example</title>
</head>
<body>
   <div id="header">
          <tiles:insertAttribute name="header" />
   </div>
   <div id="menu">
         <tiles:insertAttribute name="menu" />
   </div>
   <div id="body">
          <tiles:insertAttribute name="body" />
   </div>
   <div id="footer">
         <tiles:insertAttribute name="footer" />
   </div>
</body>
</html>

hello.jsp

<h1>${message}</h1>

header.jsp

<h1>HEADER</h1>

menu.jsp

<h1>MENU</h1>

footer.jsp

<h1>FOOTER</h1>
运行

将应用程序部署到Web服务器或通过Maven运行

mvn tomcat7:run

然后在浏览器中打开以下URL:

http://localhost:8080/spring-tiles-example/hello

在此URL上运行应用程序后,您应该看到以下内容

HEADER
MENU
Hello World!
FOOTER

恭喜!您已经创建了您的第一个Spring MVC Tiles应用程序。