spring boot+mysql+jpa如何根据实际需求获取指定的字段,并返回json

数据库表里存的数据有三个字段,id,name和age。用默认的jpa,bean的情况下,查询的结果返回了所有字段组成的json对象。如果现在只想要name和age的json对象,该如处理?

阅读 3.6k
1 个回答

你可以尝试使用@JsonView注解来解决:

@GetMapping("{id}")
@JsonView({Name.class, Age.class})
public Student findById(@PathVxxxx Long id) {
    return xxx;
}
class Student {
    private Long id;
    
    @JsonView(Name.class)
    private String name;
    
    @JsonView(Age.class)
    private Integer age;
}
interface Name {}
interface Age {}

此时,进行该方法的请求时,则仅返回name及age字段。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题