新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
最近要做动态数据的提交处理,即需要分析提交数据字段定义信息后才能明确对应的具体字段类型,进而做数据类型转换和字段有效性校验,然后做业务处理后提交数据库,自己开发一套校验逻辑的话周期太长,因此分析了Spring Validation的实现原理,复用了其底层花样繁多的Validator,在此将分析Spring Validation原理的过程记录下,不深入细节
创新互联网站建设由有经验的网站设计师、开发人员和项目经理组成的专业建站团队,负责网站视觉设计、用户体验优化、交互设计和前端开发等方面的工作,以确保网站外观精美、做网站、网站制作易于使用并且具有良好的响应性。如何使用Spring Validation
Spring Bean初始化时校验Bean是否符合JSR-303规范
1、手动添加BeanValidationPostProcessor Bean
2、在model类中定义校验规则,如@Max、@Min、@NotEmpty
3、声明Bean,综合代码如下:
@Bean public BeanPostProcessor beanValidationPostProcessor() { return new BeanValidationPostProcessor(); } @Bean public UserModel getUserModel() { UserModel userModel = new UserModel(); userModel.setUsername(null); userModel.setPassword("123"); return userModel; } @Data class UserModel { @NotNull(message = "username can not be null") @Pattern(regexp = "[a-zA-Z0-9_]{5,10}", message = "username is illegal") private String username; @Size(min = 5, max = 10, message = "password's length is illegal") private String password; }