Spring Boot

Spring Boot

Spring Boot vs Spring

  • 内置了嵌入式的Tomcat、Jetty等Servlet容器,应用可以不用打包成War格式,而是可以直接以Jar格式运行
  • Spring Boot提倡无XML配置文件的理念,使用Spring Boot生成的应用完全不会生成任何配置代码与XML配置文件。
  • 提供了多个可选择的「starter」:
    • spring-boot-starter-data-redis:
    • spring-boot-starter-activemq:
    • spring-boot-starter-jdbc:
    • spring-boot-starter-web:
    • spring-boot-starter-actuator:

Spring Boot 全家桶(简介)

@TODO

Spring Boot 的新注解

  • @SpringBootApplication: 相当于 @Configuration + @EnableAutoConfiguration + @ComponentScan
    • @Configuration : 指明是IOC容器的配置类, 被标注的类等于在spring的XML配置文件中(applicationContext.xml),装配所有bean事务,提供了一个spring的上下文环境。
    • @EnableAutoConfiguration : SpringBoot根据应用所声明的依赖来对Spring框架进行自动配置。
    • @ComponentScan : 组件扫描,可自动发现和装配Bean,默认扫描SpringApplication的run方法里的Booter.class所在的包路径下文件,所以最好将该启动类放到根包路径下。
  • @RestController: 作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON或者是XML。使用此注解之后不会再走视图处理器,而是直接将数据写入到输入流中,效果等同于通过向response.getOutputStream()写入数据
@ImportResource(locations = {"classpath:spring/spring-main.xml"})
@SpringBootApplication
public class MyApiApplication {
public static void main(String[] args) {
SpringApplication.run(MyApiApplication.class, args);
}
}

Spring Cloud & 微服务

@TODO