Spring Boot
一、SpringBoot的核心功能
- 起步依赖
- 起步依赖本质上是一个Maven项目对象模型(Project Object Model -- POM)
- 定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单来说就是将具备某种功能的坐标打包到依棋,并提供一些默认的功能。
- 自动配置
- SpringBoot 的自动配置是一个运行时(程序启动时)的过程,考虑了众多因素才决定Spring配置应该用什么不应用什么,该过程时Spring自动完成的
二、SpringBoot的起步依赖和启动类
SpringBoot要求,项目要继承SpringBoot的 起步依赖 spring-boot-starter-parent (即所有的SpringBoot项目都要依赖它)
<parent> <groupId>org.springframework.boot</group> <artifactId>spring-boot-starter-web</artifactId> <version>2.0.1.RELEASE</version> </parent>
//WEB功能 的起步依赖 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
启动类如下:(不能直接放在main/java文件夹下,在java下建一个包放)
@SpringBootApplication public class Application { public static void main(String[] args) {
//run 参数就是SpringBoot启动类的字节码对象 SpringApplication.run(Application.class, args); } }
三、热部署
因为每次修改代码后,都需要重启SpringBoot工程。热部署之后就会自动重启,在 pom.xml 中添加热部署依赖即可
<!--devtools热部署--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> <scope>true</scope> </dependency>
热部署若失败了,可能是idea 编译问题
步骤1:settings 设置 -- Compiler -- 勾选 Build project automatically
步骤2:按CTRL+SHIFT+/ ,选择Registry ,勾选上方最后的框
四、注解
@RestController
是@ResponseBody 和 @Controller 的合体,用@RestController 注解的类,下面的方法默认都是 json格式 或字符串格式 回写,不用再写@ResponseBody了
@Value("${XX}")
直接通过此注解将配置文件中的值映射到一个Spring 管理的Bean 的字段上
例子:
@ConfigurationProperties(prefix = “XX”)
是自动从配置文件中找 里的值相同的配置,把下面的属性全部自动装到对应属性内。(代替使用 @Value 过多)
注意:要提供get 和 set 方法。
补充:有个configuration-processor 执行器,可以在写配置文件的时候给提示
例子: