一、SpringBoot 介绍
解决了配置文件的繁琐配置,开箱即用,不需要配置xml文件,也不需要写java代码配置。
二、三种创建方式
1.官网创建:https://start.spring.io;然后下载,解压,用开发工具打开就ok
2.idea工具创建:打开idea,file-new-project-spring Initializr,然后下一步下一步,填写相关内容即可
【注意:】如果单击spring Initializr 一直不显示相关的项目创建页,可以在setting-http proxy中
3.创建maven工程:创建一个空的maven工程,然后在pom.xml中添加springBoot相关依赖。
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.8.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties>
<java.version>1.8</java.version> //修改jdk版本
</properties> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency>
三、spring-boot-starter-parent 为什么所有的SpringBoot项目有spring-boot-starter-parent父类呢?
1.定义了java编译版本为1.8;
2.使用utf-8格式编码;
3.继承自Spring-boot-dependencies(如果要求不使用SpringBoot自带的parent,则可以在pom.xml中自定义spring-boot-dependencies,这样依赖的版本号就解决了,但是需要自己编译jdk,编码格式。。。这些就都需要自己配置了)
,而这个里定义了依赖的版本,所以写依赖的时候才不需要写版本号;
4.执行打包操作的配置;
5.自动化的资源过滤;
6.自动化插件配置
7.针对application.properties和application.yml的资源过滤。
四、配置文件
1.application.properties:在创建springBoot项目时,默认在resource下存在,properties文件比较常见,但是更多的地方使用的是yaml配置文件,因为yaml配置更加简洁,方便
2.application.yaml:
也可以自定义配置文件的位置(yaml和properties一样)
1.默认配置文件的位置有四个:1.当前项目的根下的config目录下;2.当前项目根目录下;3.resource目录下的config,4.resource目录下; 优先级依次降低
2.自定义配置文件的位置:在environment variabler 框中填写配置文件的位置:spring.config.location=配置文件的路径/ 注意结尾必须有/
EG:比如在resource目录下创建一个xpp目录,然后在这个目录下添加application.properties配置文件,
那么,需要在如图位置添加 spring.config.location=classpath:/xpp/
也可以自定义配置文件的名字:
在如上图同样的位置添加:spring.config.name=配置文件名字,(如果位置和名字都需要改变,用分号隔开)
yaml和properties区别:
1.properties文件是无序的,yaml配置是有序的
2.properties配置文件支持PropertiesSource注解,而yaml不支持。
五、类型安全的属性注入
SpringBoot主要引入了@ConfigurationProperties(prefix=“前缀的名字”)注解 ,这样就会自动将数据(
在application配置文件中写,前缀的名字.属性的名字=值,当然也可以在resource中重新添加一个properties文件,在这里边写前缀的名字.属性的名字=值,这样就需要添加@propertySource(“class“名字.properties”)注解)
注入到对象对应的属性中,就不需要像Spring那样用@value一个一个注入了
六、SpringBoot入口类
新建一个包,下边新建一个类,一般类的命名后缀是Application,在这个类中需要添加注解 @SpringBootApplication, 这个注解的意思是 这是工程的入口类,他会扫描这个包下的spring的注解的所有类。然后编写main方法,里边有写一个SpringApplication.run(类名.class,args)