SpringBoot
基础入门
官方文档
- spring.io
- 非常重要的学习手段
测试
- application中直接运行main方法
配置文件
application.properties
中配置- 也可以使用
yml
文件进行配置
项目部署
- 可以使用官方的 example 快速添加依赖并且创建项目
自动配置
- 只要引入dependence就好,不需要关系版本之间的冲突
- 自动配置了
SpringMVC
- 自动配置了
Tomcat
- 自动配置了web的常见问题,如字符、
json
包等等 - 各种配置都有默认值
- 按需加载所有自动配置项
- 非常多的starter
- 引入场景的相关配置项才会被加载
SpringApplication
- 作用
- 推断应用类型是普通项目还是 web 项目
- 查找并加载所有可用初始化器,设置到 initializers 属性中
- 找出所有的应用程序监听器,设置到 listeners 属性中
- 推断并设置 main 方法的定义类,找到运行的主类
YML 语法
- yaml中支持 ${} 占位符获取对应值
- 松散绑定 :- 后面的字母默认大写,如last-name和lastName是一样的
server:
port: 8082
//可以在yml配置文件中直接对组件进行赋值
//通过定义类的上方注解 @ConfigurationProperties(prefix = "people") 和配置文件的值绑定
people:
name: zhangsan
age: 18
# 行内表示
people2: {name: lisi,age: 19}
address:
- 1
- 2
- 3
# 行内表示
address2: [1,2]
msg1: 'test \n test' #不会解析转义字符
msg2: "test \n test" #会解析转义字符
激活不同的YML文件
-
对于properties文件
-
spring.profiles.activw = dev
这样就可以激活application-dev.properties文件
- 对于yml文件
- 可以直接通过
---
区分不同的环境,而不用建立多个文件
server:
prot: 8080
spring:
profiles:
active: dev #激活了dev文件
---
server:
prot: 8081
spring:
profiles: test
---
server:
port: 8082
spring:
profiles: dev
Web开发
访问资源的方式
- webjars
localhost:8080/webjars/对应目录
(很少用) - public,static,/**,resources
localhost:8080/对应目录
- 优先级: resources > static(default) > public
一些注释的作用
@Component
- 生成组件
@Value
- 赋值
@Validated
-
数据校验
@Repository
- 表明为持久层(dao层)
@Service
- 表明为业务逻辑层
@MapperScan()
- @MapperScan("com.example.demo3.mapper") //扫描mapper文件夹
@TableId
- @TableId(type = IdType.AUTO) //设置id自增
@TableField
-
设置自动填充
-
需要自己编写填充逻辑
-
括号内
- fill = INSERT 在插入时更新
- fill = UPDATE 在更新时更新
@Component
- 使当前类被SpringBoot识别
@Slf4j
- 输出日志信息
@Version
- 代表这个字段是一个乐观锁
- 需要配置组件使用
@EnableTransactionManagement
- 事务管理辅助
@TableLogic
- 逻辑删除的注释