美文网首页
类属性校验

类属性校验

作者: 无实践无真知 | 来源:发表于2019-04-05 17:49 被阅读0次
spring 中校验参数的快捷方式
public class ValidatorUtils {
    private static Validator validator;

    static {
        validator = Validation.buildDefaultValidatorFactory().getValidator();
    }

    public static void validateEntity(Object object, Class<?>... groups)
            throws CustomeException {
        Set<ConstraintViolation<Object>> constraintViolations = validator.validate(object, groups);
        if (!constraintViolations.isEmpty()) {
            StringBuilder msg = new StringBuilder();
            for(ConstraintViolation<Object> constraint:  constraintViolations){
                msg.append(constraint.getMessage()).append(",");
            }
            throw new CustomeException(msg.toString());
        }
    }
}
//在系统entity 类的属性上标识   hibernate validator 注解标识 即可
//例如
@Data
@TableName("sys_user")
public class SysUserEntity implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 用户ID
     */
    @TableId
    private Long userId;

    /**
     * 用户名
     */
    @NotBlank(message="用户名不能为空", groups = {AddGroup.class, UpdateGroup.class})
    private String username;

    /**
     * 密码
     */
    @NotBlank(message="密码不能为空", groups = AddGroup.class)
    private String password;

    /**
     * 盐
     */
    private String salt;

    /**
     * 邮箱
     */
    @NotBlank(message="邮箱不能为空", groups = {AddGroup.class, UpdateGroup.class})
    @Email(message="邮箱格式不正确", groups = {AddGroup.class, UpdateGroup.class})
    private String email;

    /**
     * 手机号
     */
    private String mobile;

    /**
     * 状态  0:禁用   1:正常
     */
    private Integer status;

    /**
     * 角色ID列表
     */
    @TableField(exist=false)
    private List<Long> roleIdList;

    /**
     * 创建者ID
     */
    private Long createUserId;

    /**
     * 创建时间
     */
    private Date createTime;

} 

1.其中在controller 中校验user validateEntity方法传入user对象 即可进行校验
2.groups 在属性注解中可以添加分组 调用validateEntity传入分组可以指定规则进行校验

相关文章

  • Spring Boot 之表单校验

    一、在实体类添加校验规则注解 创建实体类,并在实体类属性上添加校验规则注解: @NotNull: 限制必须不为nu...

  • springboot

    application.yml 给某一个类装配属性 类 application.yml JSR303校验 对某个类...

  • Element-UI表单验证

    校验规则 表单通过rules属性绑定校验规则对象,表单项通过prop属性绑定具体校验规则 注意校验的字段必须和表单...

  • @valid

    spring mvc 能很方便的使用javax 的验证api @valid 在方法类中配置校验属性 <\code>...

  • java校验对象中的属性值是否符合规定条件

    以下是校验EndingComputeDTO 实体类中,四个属性值是否为空,输出为[],达到效果。

  • spring mvc 对属性进行校验

    可以在接收实体的时候添加@Valid注解用来开启验证参数功能 在实体类上需要校验的属性上添加相对应的注解进行校验 ...

  • 属性校验

    为了实现强类型语言的效果,我们可以使用propTypes来声明数据属性的合法性校验。例如:

  • client validate certificate chai

    java提供了工具用来支持校验certificate,包括证书的属性校验以及revocation校验。 Revoc...

  • element-ui 的行自定义校验。

    写的校验方法要放在计算属性里 自定义校验规则 rules 校验规则

  • 设计模式之责任链模式

    抽象处理者 校验的具体规则类 校验用户昵称 校验邮箱 校验状态 校验密码 校验规则客户端 输出结果

网友评论

      本文标题:类属性校验

      本文链接:https://www.haomeiwen.com/subject/xakkiqtx.html