@ModelAttribute忽略某些字段

时间:2019-11-23 11:14:54

标签: java spring-boot

我有一个带有龙目岛符号的User类

@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
class User { 
    String name,
    String age,
    String city
}

并发布具有以下功能类型的端点

search(@ModelAttribute User user)

我只想从查询参数中获取姓名和年龄字段,而忽略城市参数。我该怎么办?

1 个答案:

答案 0 :(得分:1)

我将创建另一个对象InUser,它仅包含必要的属性:

@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
class InUser { 
    private String name;
    private String age;
}

然后致电:

search(@ModelAttribute InUser user)

在您的控制器中,您可以调用映射器以基于User的新InUser对象