spring boot JSR303数据校验:
在前端的input 标签中 type可以指定数据类型,比如Email类型,则文本框中只能输入Email地址。
在后端也有数据校验:
JSR303叫做Bean Validation。Bean Validation 为 JavaBean 验证定义了相应的元数据模型和 API。
JSR303依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
-
Person类
@Component @ConfigurationProperties(prefix = "person") @Validated //数据校验 public class Person { private String name; private Integer age; private Date birth; private Boolean sex; @Email //邮箱格式校验 private String email; private Map<String,Object> map; private List<Object> hobbies; private Dog dog; }
-
application.yaml
person: name: 张三 age: 19 birth: 2000/11/21 sex: true #邮件 email: aaa map: {k1: v1, k2: v2} hobbies: - code - music - sport dog: name: 旺财 sex: 公 age: 3
如果email不是邮箱格式,则会报错!
jsr303:
Hibernate Validator 附加的 constraint
源码位置:
配置文件的位置:
-
配置文件可以再根目录下创建config文件夹,在该文件夹下写application.yaml (优先级最高)
-
可以再resources下创建config文件夹,在该文件夹下写application.yaml(优先级第二)
-
还可以在resources下直接写application.yaml(优先级最低)
多环境开发:
- 比如开发环境、测试环境等等
默认的配置文件:application.properties
#多环境配置,可以使用↓↓↓来选择环境
spring.profiles.active=dev
测试环境:application-test.properties
server.prot=8082
开发环境:application-dev.properties
server.prot=8083
使用yaml写多环境:
-
application.yml
server: port: 8081 #指定开发环境 spring: profiles: active: test --- server: port: 8082 #环境名称 spring: config: activate: on-profile: dev --- server: port: 8083 #环境名 spring: config: activate: on-profile: test
- 使用
---
分隔不同的环境
- 使用
spring boot自动配置原理:
- XXXAutoConfiguration 自动配置类
- XXXProperties: 配置文件的相关默认属性内容