Spring-BootMavenSpringBoot极简教程 · Spring Boot

SpringBoot属性与配置(2)

2019-03-29  本文已影响1人  汉寿周杰伦

今日份的Bug记录:

1. SpringBoot+idea热部署(自动刷新):

https://blog.csdn.net/qq_42685050/article/details/81588584
这里注意不仅要添加依赖还要把插件也在pom文件中加上,不然不会有刷新的效果,另外,刷新好像是改动后一段时间刷新,不是立即。

2. 解决mysql java.sql.SQLException: The server time zone value‘XXXXXX' is unrecognized or represents...

使用的数据库是MySQL,驱动是6.0.3,这是由于数据库和系统时区差异所造成的,在jdbc连接的url后面加上serverTimezone=GMT即可解决问题,如果需要使用gmt+8时区,需要写成GMT%2B8,否则会被解析为空。再一个解决办法就是使用低版本的MySQL jdbc驱动,5.1.28不会存在时区的问题。


application.yml配置图示

加上时区信息之后就不在报错了。

3. @Controller和@RestController的区别

image.png
(转自: https://blog.csdn.net/yanweihpu/article/details/53928398)

我们一般都会在Controller上加上@Controller注解,但是有时候也见有加上@RestController的,现在就说说他们的区别:

不同之处:

  • @Controller类中的方法可以直接通过返回String跳转到jsp、ftl、html等模版页面。在方法
  • @ResponseBody注解,也可以返回实体对象。
  • @RestController类中的所有方法只能返回String、Object、Json等实体对象,不能跳转到模版页面。
  • @RestController相当于@ResponseBody + @Controller。

补充:

@RestController中的方法如果想跳转页面,则用ModelAndView进行封装,如下:

@RestController
public class UserController {
  @RequestMapping(value = "/index",method = RequestMethod.GET)
   public ModelAndView toIndex(){
       ModelAndView mv = new ModelAndView("index");
   return mv;    
  }
}
上一篇下一篇

猜你喜欢

热点阅读