您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Spring 4 MVC-REST服务-在Bean中使用默认值

Spring 4 MVC-REST服务-在Bean中使用默认值

您的Person类并不是真正的弹跳豆。它只是一个类,由于@RequestBody注释而在您调用应用程序端点时会设置参数。不在调用主体中的参数将不会被绑定,因此要解决您的问题,您可以执行以下操作:

像这样为您的人员类别设置认值(toString()为方便起见,将其覆盖:

public class Person {

public Person() {
}

private String firstName = "default";
private String lastName = "default";
private Integer activeState = 7;

public String getFirstName() {
    return firstName;
}

public String getLastName() {
    return lastName;
}

public Integer getActiveState() {
    return activeState;
}

@Override
public String toString() {
    return "Person{" +
            "firstName='" + firstName + '\'' +
            ", lastName='" + lastName + '\'' +
            ", activeState=" + activeState +
            '}';
}

}

对端点执行请求,例如使用以下json数据:

{
"firstName": "notDefault"

}

如果在控制器中打印出人员对象,则会注意到firstName获得了非认值,而其他则为认值:

public void add(@Valid @RequestBody Person oPerson) {
System.out.println(oPerson);

}

控制台输出Person{firstName='notDefault', lastName='default', activeState=7}

Java 2022/1/1 18:17:21 有606人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶