欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
  说到页面渲染,这里不得不给大家科普一下:
 
  html文件负责显示页面,后台数据可以通过ajax方式获取,如果数据完全使用ajax获取,这样页面和后端就没什么联系,这时候就可以成为前后端分离。jsp页面是一种页面渲染方式,它是对jsp文件解析后,将后台数据填充到html页面并返回到前端,这种方式是非前后端分离的,所以,脱离了容器,jsp页面啥都不是,根本打不开。jsp可以写java代码,可以写逻辑,功能很强大,但是也是它逐渐被抛弃的原因。模板引擎, 目前是比较流行的一种写法,或许你会问:前后端分离已经很好用了,为啥还要用模板引擎?原因是这样的,前后端分离的页面,是不经过容器控制的,所以安全框架不能对它进行过滤,这是其一,其二、前后端分离的页面,数据是ajax异步获取的,所以首次打开页面时(比如爬虫爬取页面,未执行js等),获取到的只是一些html元素,没有数据填充,而模板引擎可以在获取html文件时就将数据填充进去。模板引擎也是依赖于后端容器,页面中的内容使用标签进行替换。
 
  本文不讲前后端分离,先讲下模板引擎,Springboot支持很多模板引擎,thymeleaf算是比较好用的一种。
 
  项目地址: 品茗IT-同步发布
 
  品茗IT 提供在线支持:
 
  一键快速构建Spring项目工具
 
  一键快速构建SpringBoot项目工具
 
  一键快速构建SpringCloud项目工具
 
  一站式Springboot项目生成
 
  Mysql一键生成Mybatis注解Mapper
 
  如果大家正在寻找一个java的学习环境,或者在开发中遇到困难,可以加入我们的java学习圈,点击即可加入,共同学习,节约学习时间,减少很多在学习中遇到的难题。
 
  需要引入spring-boot-starter-thymeleaf和spring-boot-starter-web。
 
  父pom管理了所有依赖jar包的版本,地址:
 
  SpringBoot对thymeleaf做了很好的整合,隐藏了大部分细节,所以,我们只需要在Springboot的配置文件(一般是用application.properties)中加入以下配置即可:
 
  这里,
 
  spring.thymeleaf.cache是对页面不缓存,这样修改了模板文件,立即生效。
 
  spring.thymeleaf.prefix指明了模板文件的地址
 
  spring.thymeleaf.suffix 指明了模板文件后缀。
 
  另外三个参数就不说了,顾名思义。
 
  这里建了一个模板文件detail.html文件。乍一看,它和html没啥区别,其实区别真不大,只是里面有thymeleaf的标签。
 
  里面的th:开头的都是thymeleaf的标签,如th:href、th:onclick、th:text等。
 
  使用模板引擎,需要我们自己控制ModelAndView。这里的ModelAndView的viewName是detail,结合thymeleaf的配置,就是找spring.thymeleaf.prefix + viewName + spring.thymeleaf.suffix 指定的这个文件。
 
  这里面,FQuestionInfo 是保存数据的一个实体,ResultModel是一个统一返回的实体,其实可以写成一个实体,都是作为返回数据的。
 
  modelAndView使用addObject("data", retOk);将数据传递给viewName指定的模板文件,解析后返回一个html文件给浏览器。
 
  页面如下:
 
  详细完整的实体,可以访问品茗IT-博客《SpringBoot入门建站全系列(八)集成模板引擎(thymeleaf)渲染页面》
 
  Spring组件化构建
 
  喜欢这篇文章么,喜欢就加入我们一起讨论SpringBoot技术吧!

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h60990.shtml