SpringBoot
- SpringBoot(@SpringBootApplication)
- 问题引入
- 我们的工程在引入spring-boot-starter-web依赖的时候,为什么没有指定版本(版本锁定)
- spring-boot-starter-web是个啥,为什么引入了它之后,就不需要再引入其它依赖了(起步依赖)
- 我们的程序没有部署到tomcat,为什么就可以被访问(内置tomcat)
- 为什么我们访问程序的时候要用8080端口,谁定义的(默认配置)
- SpringBoot配置文件(自定义配置)
- application.properties
- application.yml
- application.yaml
- 配置文件的优先级
- @Value 读配置文件(单个)
- @ConfigurationProperties 读对象
- 多环境配置
- 日志记录@Slf4j
- 单元测试@SpringBootTest注解
- 前端静态资源
- SpringBoot整合Mybatis
- 统一响应结果(vo view+object)
- 注解总结(七)
SpringBoot(@SpringBootApplication)
SpringBoot是对Spring的改善和优化,它基于约定优于配置的思想,提供了大量的默认配置和实现
使用SpringBoot之后,程序员只需按照它规定的方式去进行代码的开发,而无需再去编写一堆复杂的配置
SpringBoot的主要功能如下:
起步依赖:以功能化的方式将需要的依赖进行组合,通过以starter的方式引入
默认配置:实现了大量框架的默认配置项,程序员无须再进行手动配置
内置Tomcat:SpringBoot开发的程序无需进行tomcat部署,可直接运行
总之:SpringBoot可以快速构建庞大的企业级项目,并且尽可能的减少配置,让程序员去关注业务
使用SpringBoot时,需要创建SpringBoot的启动类,添加@SpringBootApplication注解
问题引入
我们的工程在引入spring-boot-starter-web依赖的时候,为什么没有指定版本(版本锁定)
spring-boot-starter-web是个啥,为什么引入了它之后,就不需要再引入其它依赖了(起步依赖)
我们的程序没有部署到tomcat,为什么就可以被访问(内置tomcat)
为什么我们访问程序的时候要用8080端口,谁定义的(默认配置)
SpringBoot配置文件(自定义配置)
SpringBoot是基于约定的,很多配置都有默认值,但也允许自定义配置,配置文件有如下格式
配置文件必须在recources目录下创建application. 文件 (会变成大炮)
application.properties
application.yml
application.yaml
配置文件的优先级
@Value 读配置文件(单个)
@ConfigurationProperties 读对象
这个需要在实体类中配置@ConfigurationProperties,并且加入到容器中,或者使用@Import(实体类.Class)导入要使用该实体的类中(注解作用在要使用的类的类上)
好处:可以自动注入对象,一次对多个属性赋值
注意: 需要添加一个spring-boot-starter-processcer坐标
多环境配置
java –jar springboot.jar –-spring.profiles.active=test
java –jar springboot.jar –-spring.profiles.active=test –-server.port=9090
日志记录@Slf4j
单元测试@SpringBootTest注解
在Spring框架中已经有测试相关的注解@Runwith(SpringJunit4ClassRunner.class)和 @ContextConfiguration(classes= Spring配置类.class)在SpringBoot中又做了进一步的改进@SpringBootTest
前端静态资源
思考: 现在项目是一个普通java工程,没有webapp目录,那么静态资源应该放哪里呢?
答案: SpringBoot默认的静态资源是在**classpath:/static/**目录(即recources目录下)
SpringBoot整合Mybatis
在SpringBoot启动类中配置@MapperScan(“com.itheima.mapper”)注解
或在XX.Mapper文件中添加@Mapper注解(麻烦)
统一响应结果(vo view+object)
添加vo 作为返回前端的数据包,定义一个Result类作为返回前端的统一响应结果,包括响应码,消息和返回数据的属性
注解总结(七)
@SpringBootApplication
@MapperScan
@Mapper
@Value
@ConfigurationProperties
@Slf4j
@SpringBootTest