下面是关于SpringBoot yaml语法与JRS303校验的完整攻略:
什么是SpringBoot yaml语法
yaml
是一种面向人类的通用数据序列化格式,被广泛地应用于各类编程语言中。在SpringBoot中,yaml
语法被用来配置应用程序的属性,更具有可读性、易用性和可维护性。
下面是一个简单示例:
server:
port: 8080
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost/test
username: root
password: password
在这个示例中,server.port
决定了应用程序运行时监听的端口号,而 spring.datasource
配置了数据源的相关信息。通过 yaml
的嵌套规则,我们可以将各类应用程序属性分层有序地存储并管理。
如何在SpringBoot中使用JRS303校验
JRS303 校验是为了保证数据的输入准确性、合法性,并且它还是一种通用的校验,当然包含了很多其他默认的校验规则。
在 SpringBoot 中使用 JRS303校验,我们需要在pom文件中将 hibernate-validator相关依赖加入进去:
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.0.13.Final</version>
</dependency>
接着,我们可以在实体类注解上使用相关校验注解:
public class MyEntity {
@NotBlank(message = "name can not be empty")
private String name;
@Min(value = 0, message = "age should be greater than 0")
@Max(value = 150, message = "age should be less than 150")
private Integer age;
// getter and setter
}
在控制器方法中,我们可以通过 @Valid
将接收到的参数实体进行校验:
@PostMapping("/add")
@ResponseBody
public Result add(@RequestBody @Valid MyEntity entity) {
// 业务逻辑处理
}
当校验失败时,SpringBoot会抛出 javax.validation.ConstraintViolationException
异常,并由异常处理器进行处理。我们也可以通过手动校验来处理异常,如下:
@Autowired
private Validator validator;
@PostMapping("/add")
@ResponseBody
public Result add(@RequestBody MyEntity entity) {
// 手动校验
Set<ConstraintViolation<MyEntity>> violations = validator.validate(entity);
if (!violations.isEmpty()) {
// 处理校验失败
}
// 业务逻辑处理
}
以上就是 SpringBoot yaml语法与JRS303校验超详细讲解的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot yaml语法与JRS303校验超详细讲解 - Python技术站