SpringBoot模板渲染介绍

2025-12-26 07:11:59

1、模板渲染

在之前所见到的信息显示发现都是以Rest风格进行显示,但是很明显在时间的开发之中,所有的数据的显示最终都应该交由页面完成,但是这个页面并不是*.jsp页面,而是普通的*.html页面,而且最为重要的是此处所使用的渲染的页面采用的模板方式的显示,而在java开发行业,对于前台的显示模板常见的一共有三类技术:FreeMarker、Velocity、thymeleaf(推荐使用)。下面就利用thymeleaf实现一个简单的模板渲染操作。

2、如果要想在项目之中去使用thymeleaf模板,那么应该首先进行相关支持依赖库的导入,修改pom.xml配置文件:

<dependency>

   <groupId>org.springframework.boot</groupId>

   <artifactId>spring-boot-starter-thymeleaf</artifactId>

</dependency>

SpringBoot模板渲染介绍

3、本次的开发依然通过一个控制层跳转到页面之中进行页面显示。在SpringMVC的时候使用的是ModelAndView传递,而在SpringBoot里面如果要传递直接在方法中定义一个Model参数即可。

package com.gwolf.controller;

import com.gwolf.util.controller.AbstractBaseController;

import org.springframework.stereotype.Controller;

import org.springframework.ui.Model;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

@Controller

public class MessageController extends AbstractBaseController{

    

    @RequestMapping(value="/show", method = RequestMethod.GET)

    public String show(String mid, Model model) {

        model.addAttribute("url","www.baidu.com"); //request属性传递包装

        model.addAttribute("mid",mid);

        

        return "message/message_show"; //此处指返回一个路径,该路径没有设置后缀,默认为*.html

    }

}

SpringBoot模板渲染介绍

4、现在的控制器之中使用的是“@Controller”注解,所以此时执行该控制器的方法后会进行跳转处理。如果现在要进行跳转页面的定义有严格要求:在CLASSPATH路径下(src/main/resources、src/main/view)必须建立有一个templates的目录,在这个目录里面保存有thymeleaf的所有相关页面,这些页面可以按照文件目录保存;

下面为了标准起见,建立一个源代码目录:src/main/view。并且在这个目录下面还要创建一个templates目录,名字一定不能错。

SpringBoot模板渲染介绍

SpringBoot模板渲染介绍

5、编写message_show.html页面(重要提示:该页面编写的时候所有的元素一定要完结)。

<!DOCTYPE html>

<html xmlns:th="http://www.thymeleaf.org">

    <head>

        <title>SpringBoot模板渲染</title>

        <meta http-equiv="content-type" 

              content="text/html;charset=UTF-8" />

    </head>

<body>

    <p th:text="'官方网站:' + ${url}" />

    <p th:text="'用户名:' + ${mid}" />

</body>

</html>

SpringBoot模板渲染介绍

6、运行服务,而后输入访问路径:http://localhost/show?mid=baidujava

SpringBoot模板渲染介绍

7、如果现在我们所定义的要访问的页面不是通过控制器跳转的怎么办?那么为了解决这样的问题,可以考虑在thymeleaf所在的父路径之中“src/main/view”建立一个static的子目录,该目录保存的是所有静态页面;

SpringBoot模板渲染介绍

8、在以后的实际开发之中,想js,css,images等信息文件都要求放在static目录中。thymeleaf默认的访问的页面路径的后缀为*.html,那么也可以通过修改application.yml配置文件进行变更。

server:

  port: 80

spring:

  messages:

    basename: i18n/Messages,i18n/Pages #资源文件的名称

  thymeleaf:

    suffix: .htm

SpringBoot模板渲染介绍

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢