简介:
-
Spring Boot是Spring框架一个子项目,用于创建Spring4.0 项目,它可以自动配置Spring各种组件,并不依赖代码生成和XML配置文件。
优点:
- 轻松创建独立的Spring应用程序
- 内嵌Tomcat、jetty等web容器,不需要部署WAR文件
- 提供一系列的starter,简化的Maven配置,不需要添加太多依赖
入门程序:
- 1.创建maven项目
- 2.在pom文件中配置依赖
-
<!--springboot父依赖:spring-boot-starter-parent--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <dependencies> <!-- spring-boot-starter-web--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
- 3.写一个控制器,一个main方法,运行程序
- @Controller:一般对应页面
- @RestController:对应数据
-
@RestController @EnableAutoConfiguration @RequestMapping("hello") public class HelloController { @RequestMapping("/hello")//映射路径 @ResponseBody//响应体 public String hello(){ return "spring boot"; } public static void main(String[] args) { SpringApplication.run(HelloController.class, args); } }
- 4.在浏览器中访问http://localhost:8080/hello/hello
SpringBoot的启动方式:采用第二种
第一种:入门描述,写EnableAutoConfiguration注解并在main方法中使用SpringApplication启动程序(单个controller)
public static void main(String[] args) {
SpringApplication.run(要运行的控制器.class, args);
}
第二种:创建一个App类,在App类中配置EnableAutoConfiguration和组件扫描ComponentScan,然后在main方法中使用SpringApplication启动程序 (多个congtroller)
@ComponentScan("com.zjc.web.controller") //扫描路径
@EnableAutoConfiguration
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class,args);
}
}
spring-boot-starter-web
- 包含SpringMVC框架、SLF4J、Jackson、Hibernate Validator 和 Tomcat 等依赖
- Spring 推荐的 Web 应用中使用的开源库的组合
EnableAutoConfiguration
- 注解的作用:让 Spring Boot 根据应用所声明的依赖来对Spring框架进行自动配置
Spring Boot依赖
spring-boot-starter | 核心 POM,包含自动配置支持、日志库和对 YAML 配置文件的支持。 |
spring-boot-starter-web | 支持 Web 应用开发,包含 Tomcat 和 spring-mvc。 |
spring-boot-starter-amqp | 通过 spring-rabbit 支持 AMQP 消息队列 |
spring-boot-starter-aop | 包含 spring-aop 和 AspectJ 来支持面向切面编程(AOP)。 |
spring-boot-starter-batch | 支持 Spring Batch,包含 HSQLDB。 |
spring-boot-starter-data-jpa | 包含 spring-data-jpa、spring-orm 和 Hibernate 来支持 JPA。 |
spring-boot-starter-data-mongodb | 包含 spring-data-mongodb 来支持 MongoDB。 |
spring-boot-starter-data-rest | 通过 spring-data-rest-webmvc 支持以 REST 方式暴露 Spring Data 仓库。 |
spring-boot-starter-jdbc | 支持使用 JDBC 访问数据库 |
spring-boot-starter-security | 包含 spring-security。 |
spring-boot-starter-test | 包含常用的测试所需的依赖,如 JUnit、Hamcrest、Mockito 和 spring-test 等。 |
spring-boot-starter-velocity | 支持使用 Velocity 作为模板引擎。 |
spring-boot-starter-websocket | 支持使用 Tomcat 开发 WebSocket 应用。 |
spring-boot-starter-ws | 支持 Spring Web Services |
spring-boot-starter-actuator | 添加适用于生产环境的功能,如性能指标和监测等功能。 |
spring-boot-starter-remote-shell | 添加远程 SSH 支持 |
spring-boot-starter-tomcat | 使用 Spring Boot 默认的 Tomcat 作为应用服务器。 |
spring-boot-starter-jetty | 使用 Jetty 而不是默认的 Tomcat 作为应用服务器。 |
spring-boot-starter-log4j | 添加 Log4j 的支持 |
spring-boot-starter-logging | 使用 Spring Boot 默认的日志框架 Logback |