Spring验证设置字段值

时间:2016-02-17 01:30:18

标签: java spring validation

我目前正在尝试熟悉网页的弹簧验证。我在网上看到的大多数示例都显示了如何发送错误消息以进行验证。我很好奇如何设置字段的值作为验证的一部分。

这是一个更好地解释自己的例子

想象一下网页的某个类,其中包含某人薪水的详细信息

获取和设置器的示例

public Integer getSalary() {
    return Salary;
}

public void setSalary(Integer Salary) {
    this.Salary = Salary;
}

人员工资不能低于零,因此如果输入负数,则该字段将更新为零。

如何做到这一点?

它会在验证类中完成吗?

验证类的示例部分

if(!isBlank(emp.getSalary)){
    int sal = emp.getSalary;

    if(sal < 0){
        rejectValue("emp.salary", "error.salaryRedection");
        // Do something here?
        // e.g getSalary(setSalary(0));
    }
}

1 个答案:

答案 0 :(得分:0)

您可以在设置其他方法之前传递薪水: -

public void setSalary(Integer Salary) 
{
    this.Salary = validatedSalary(Salary);
}

你可以让方法返回正确的值: -

public int validatedSalary(int Salary) 
{
    if(Salary < 0)  
    { 
       return 0;
    }
    return Salary;
}