从零开始学 SpringBoot (1)

来源:互联网 发布:android app启动优化 编辑:程序博客网 时间:2024/05/29 04:05

SpringBoot注意事项

  • @SpringBootApplication申明让spring boot自动给程序进行必要的配置,等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan

  • @RestController相当于@ResponseBody + @Controller

  • 如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。例如:本来应该到success.jsp页面的,则其显示success.
    2)如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。
    3)如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

  • 热部署——只需要在pom.xml里,引入相应的jar包就行了
<dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-devtools</artifactId>      <optional>true</optional><!-- optional=true,依赖不会传递,该项目依赖devtools;之后依赖myboot项目的项目如果想要使用devtools,需要重新引入 -->  </dependency> 
  • 重新编译类文件
    当我们修改了一个java类的时候,我们只需要重新编译一下,SpringBoot的就会重启了。因为devtools会监听classpath下的文件变动,所以当java类重新编译的时候,devtools会监听到这个变化,然后就会重新启动SpringBoot。这个重启是非常快的一个过程。因为在SpringBoot中有两个类加载器,一个是加载工程外部资源的,如jar包,还有一个类加载器是用来加载本工程的class的。所以在重启SpringBoot的时候只加载本工程的class文件。
  • 监听文件夹的变化
    如果你不想重新编译java类的话,还有一种方式用来让SpringBoot重启,那就是让devtools监听文件夹的变化:比如我们想让com.zkn.learnspringboot这个文件夹下的文件改变的时候,重新启动SpringBoot,那么我们只要在application.properties中添加这样一句话就行了:spring.devtools.restart.additional-paths=com\zkn\learnspringboot。
  • 页面热部署
    devtools可以实现页面热部署,即页面修改后会立即生效。你可以在application.properties文件中配置spring.thymeleaf.cache=false来实现这个功能。
0 0
原创粉丝点击