java - 验证后更改对象字段的值

标签 java

我有一个带有以下字段的 Java 对象 User :

public class User {
      private String firstName;
      private String desc;
      private String lastName;
      private String profile;
      ... }

在某些字符串字段上,我需要使用自己的验证约束进行验证,如果该验证约束失败,我想将该相应字段的值更改为某个默认值。

我通过 hibernate 将该对象保存在我的数据库中。

为了验证,我编写了自己的约束 validator (如本例中所示) https://docs.jboss.org/hibernate/validator/5.0/reference/en-US/html/validator-customconstraints.html#validator-customconstraints-validator )

我可以使用自定义 validator 验证这些字段,但我不知道如何将相应字段的值更改为默认值,以防验证失败。

最佳答案

public class UserValidator {
    public User validate(User user) {
        // check user fields, make sure they are valid
        // if they are, return the same user
        // if not, create another user object, with the required changes, and return that
    }
}

session.save(new UserValidator().validate(user));

关于java - 验证后更改对象字段的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58212482/

相关文章:

java - 在没有 ODBC 的情况下从 Java 操作 Access 数据库

java - JButton alpha 背景随着鼠标悬停而改变

java - 使用 java 显示的 Admob 广告未使用 xml 显示

java - 如何通过 hibernate 验证组件实体的属性?

java - 从命令提示符运行时,maven 不运行主类

java - 借助 AlertDialog 将新对象添加到自定义数组适配器

java - 根据 jframe 中的条件在特定区域上绘制颜色

java - 不引入只有一个值的CDATA

java - 如何从主应用程序调用 Spring Boot 调用服务?

java - 如何将本地 html 文件加载到 Jsoup 中?