springmvc整合hibernate validation实现校验

it2025-07-18  6

先Mark,可实现校验,但还有问题:无法返回校验信息

1.pom.xml

<!--hibernate-validator-后台校验--> <dependency> <groupId>org.hibernate.validator</groupId> <artifactId>hibernate-validator</artifactId> <version>6.1.5.Final</version> </dependency> <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>2.0.1.Final</version> </dependency> <!--hibernate-validator-后台校验-->

2.controller中加@Valid

@PostMapping("register") @ResponseBody public ResponseEntity<Void> userRegister(@RequestBody @Valid User user){

3.实体类属性加相应注解

import javax.validation.constraints.Pattern; import org.hibernate.validator.constraints.Length; ...... @Length(min = 4, max = 20, message = "用户名只能在4~20位之间") private String username; @Length(min = 4, max = 20, message = "用户名只能在4~20位之间") private String password; @Pattern(regexp = "^1[35678]\\d{9}$", message = "手机号格式不正确") private String phone; ......

4.spring-mvc.xml

<!--验证器--> <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"> <!--注入hibernate的验证器--> <property name="providerClass" value="org.hibernate.validator.HibernateValidator"/> </bean>
最新回复(0)