最近一个同事在写一个接口,其中要返回的是一个对象的List,最后是以json格式的字符串给接口调用方,
于是就出现一个问题,因为这个对象的字段很多,但是接口调用方却不需要那么多,当时想新建一个类去做,不过万一有很多接口,这样就比较麻烦
,于是到网上找了找返现有很多方法可以解决,这里提供一种JsonIgnoreProperties注解方法,
第一:要在实体上加上注解,如下
@JsonIgnoreProperties(value = { "name" }) //这个意思就是屏蔽name这个字段,如果多个可以在后面用逗号拼接
public class OrderInfo {
private String id;
private String name;
private String price
getter
setter 方法
}
第二:就是接口方法了,也很简单
@RequestMapping("/test")
public void test(HttpServletRequest req,HttpServletResponse res) throws Exception{
ObjectMapper mapper = new ObjectMapper();
PrintWriter pWriter = res.getWriter();
pWriter.write(mapper.writeValueAsString(orderInfoList));
}
最后你得到的就是一个 json格式的字符串,里面是没有activityName字段的;
返回json也是可以动态的去过滤,这个网上也有不少资料的,有时间会去整理下