[英]JsonView does not work
我使用注釋@JsonView,但它不起作用,這是我的代碼和返回數據,請你幫我看看我錯了。
我的spring jar顯示了“spring-web-3.2.8.RELEASE.jar”的版本,我只是添加了這個bean,我不知道它是否有用,我只是直接在我的代碼中使用@JsonView
<bean id = "jacksonMessageConverter" class = "org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
</bean>
這是View類
public class View {
public interface Summary{};
}
這是User實體類(省略了“set”“get”方法),它有幾個對應數據庫的屬性,有一個“status”屬性不需要在json數據中返回。
public Class User{
@JsonView(View.Summary.class)
private Integer uid;
@JsonView(View.Summary.class)
private String first;
@JsonView(View.Summary.class)
private String last;
@JsonView(View.Summary.class)
private String email;
@JsonView(View.Summary.class)
private String password;
private Integer status;
}
我有控制器
@RequestMapping(value="/login", method=RequestMethod.POST)
@JsonView(View.Summary.class)
@ResponseBody
public Message login(String email, String password){
User user = userMapper.findUser(email,password);
Message message = new Message();
message.setUser(user);
return message;
}
}
這是我的Message類,帶有“set”“get”方法
public class Message {
private int box_hits;
private List<Box> boxes;
@JsonView(View.Summary.class)
private User user;
}
當我使用郵遞員測試網址時,它會顯示json數據,顯然,它不應該返回沒有@JsonView的屬性,我的代碼有什么問題?
{
"box_hits": 0,
"boxes": null,
"user": {
"uid": 1,
"first": "yuan",
"last": "kang",
"email": "123@qq.com",
"password": "123",
"status": 0
}
}
如公告博客文章中所述 ,此功能僅在Spring Framework 4.2中提供。 它不適用於Spring 3.2.8。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.