栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Jackson JSON视图而不注释原始bean类

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Jackson JSON视图而不注释原始bean类

如何使用混入功能?

http://wiki.fasterxml.com/JacksonMixInAnnotations

http://www.cowtownprer.com/blog/archives/2009/08/entry_305.html


import org.prehaus.jackson.annotate.JsonAutoDetect.Visibility;import org.prehaus.jackson.annotate.JsonMethod;import org.prehaus.jackson.map.ObjectMapper;import org.prehaus.jackson.map.SerializationConfig;import org.prehaus.jackson.map.annotate.JsonView;public class JacksonFoo{  public static void main(String[] args) throws Exception  {    ObjectMapper mapper = new ObjectMapper().setVisibility(JsonMethod.FIELD, Visibility.ANY)        .configure(SerializationConfig.Feature.DEFAULT_VIEW_INCLUSION, false);    mapper.getSerializationConfig().addMixInAnnotations(Bar.class, BarMixIn.class);    mapper.setSerializationConfig(mapper.getSerializationConfig().withView(Expose.class));    System.out.println(mapper.writevalueAsString(new Bar()));    // output: {"b":"B"}  }}class Bar{  String a = "A";  String b = "B";}abstract class BarMixIn{  @JsonView(Expose.class)  String b;}// Used only as JsonView marker.  // Could use any existing class, like Object, instead.  class Expose {}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/466374.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号