中文乱码和Thymleaf

2019-06-19  本文已影响0人  榷奕

中文乱码问题

问题:在使用swagger测试的时候,发现返回数据是正确的,使用@RestController,用localhost地址去访问相应的服务,返回数据是乱码。

既然swagger测试时的数据是正确的,表明数据库编码没有问题,也能正确取出,传到页面的时候,解析出了问题,如果不是自己写的html页面,没办法控制页面编码,而RestController自动生成的页面编码可能不支持中文。之后自己使用Thymleaf写了一个简单页面,编码设置成了utf-8,测试一下之后没有问题。

Thymleaf

配置过程

  1. 引入pom依赖
  2. 在yml里面写配置

spring:
  thymeleaf:
   cache: false
   prefix: classpath:/templates/
   suffix: .html
   encoding: UTF-8
   mode: HTML5

  1. 写的配置里面很重要的一句是classpath那句,thymleaf能发挥作用的页面都要放在resources/templates/这个目录下面
  2. @Controller下面,某一个方法的返回值是String类型,最后return的时候,返回值是那个页面的名字,由于配置里面有suffix后缀,html也不用写。
  3. 在templates目录下面生成一个html页面,上网粘一段万能模板。
  4. 在Controller里面,方法的参数里面放上Model,Service给出返回值之后,Model.addAtrribute(“test”, entity);
    然后在页面里面可以用${"test"}来调用这个字段返回值,并展示在页面里。



目前这东西还没太有用,当某一天能把前端的简单页面拿过来,自己尝试着往里面填充返回值的时候,基本就能用了。

上一篇下一篇

猜你喜欢

热点阅读