当前位置: 首页 > news >正文

网站开发公司杭州网站建设网络营销工资一般多少

网站开发公司杭州网站建设,网络营销工资一般多少,门头广告设计与制作,wordpress首页文章截取在日常的Java开发中,Jackson库是处理JSON数据的常用工具。其中,JsonTypeId注解是一个非常实用的功能,它可以帮助我们更好地控制多态类型信息在序列化过程中的表现。今天,我们就来深入探讨一下JsonTypeId的用法,并通过具…

在日常的Java开发中,Jackson库是处理JSON数据的常用工具。其中,@JsonTypeId注解是一个非常实用的功能,它可以帮助我们更好地控制多态类型信息在序列化过程中的表现。今天,我们就来深入探讨一下@JsonTypeId的用法,并通过具体的实例来展示它的强大功能。
一、@JsonTypeId的作用
@JsonTypeId注解用于覆盖在序列化过程中指定的多态类型信息。它通常与@JsonTypeInfo注解配合使用,以实现更灵活的类型标识。通过@JsonTypeId,我们可以自定义类型标识的字段,从而在JSON输出中更清晰地表达对象的实际类型。
二、实例解析
(一)定义抽象类和子类
首先,我们定义一个抽象类Shape,并使用@JsonTypeInfo和@JsonSubTypes注解来指定多态类型信息。
java复制
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.WRAPPER_OBJECT)
@JsonSubTypes(@JsonSubTypes.Type(value = Rectangle.class, name = “rectangle”))
public abstract class Shape {
}
接下来,定义一个具体的子类Rectangle,并使用@JsonTypeName注解来指定其类型名称。同时,在Rectangle类中添加一个字段typeId,并使用@JsonTypeId注解来覆盖默认的类型标识。
java复制
@JsonTypeName(“rectangle”)
public class Rectangle extends Shape {
@JsonTypeId
private String typeId;
private int w;
private int h;

public Rectangle() {}public static Rectangle of(String typeId, int w, int h) {Rectangle rect = new Rectangle();rect.typeId = typeId;rect.w = w;rect.h = h;return rect;
}@Override
public String toString() {return "Rectangle{" +"typeId='" + typeId + '\'' +", w=" + w +", h=" + h +'}';
}

}
(二)序列化测试
在主类中,我们创建一个Rectangle对象,并使用Jackson的ObjectMapper进行序列化。
java复制
public class ExampleMain {
public static void main(String[] args) throws IOException {
Shape shape = Rectangle.of(“RectShape”, 3, 6);
System.out.println(shape);
System.out.println(“-- serializing --”);
ObjectMapper om = new ObjectMapper();
String s = om.writeValueAsString(shape);
System.out.println(s);
}
}
运行结果如下:
复制
Rectangle{typeId=‘RectShape’, w=3, h=6}
– serializing –
{“RectShape”:{“w”:3,“h”:6}}
(三)对比无@JsonTypeId的情况
如果移除Rectangle类中typeId字段的@JsonTypeId注解,序列化结果会有所不同。
java复制
public class Rectangle extends Shape {
private String typeId;
private int w;
private int h;

// 省略构造方法和toString方法

}
此时,运行主类的代码,输出结果为:
复制
Rectangle{typeId=‘RectShape’, w=3, h=6}
– serializing –
{“rectangle”:{“typeId”:“RectShape”,“w”:3,“h”:6}}
可以看到,没有@JsonTypeId注解时,typeId字段被正常序列化为普通字段,而不会被用作类型标识。
三、总结
通过上述实例,我们可以清楚地看到@JsonTypeId注解的作用。它允许我们在序列化过程中自定义类型标识字段,从而更灵活地控制JSON输出的结构。在实际开发中,合理使用@JsonTypeId可以让我们更好地处理复杂的多态类型场景,提升代码的可读性和可维护性。
希望这篇博客能帮助你更好地理解和使用Jackson中的@JsonTypeId注解。如果你有任何疑问或想法,欢迎在评论区留言交流!


文章转载自:
http://undemonstrative.tgcw.cn
http://until.tgcw.cn
http://fluorometer.tgcw.cn
http://afterheat.tgcw.cn
http://dizygous.tgcw.cn
http://embankment.tgcw.cn
http://cryptonym.tgcw.cn
http://anticathode.tgcw.cn
http://epenthesis.tgcw.cn
http://carle.tgcw.cn
http://tassel.tgcw.cn
http://androstane.tgcw.cn
http://synoptical.tgcw.cn
http://pararuminant.tgcw.cn
http://vr.tgcw.cn
http://climatically.tgcw.cn
http://scapiform.tgcw.cn
http://richly.tgcw.cn
http://constructional.tgcw.cn
http://guienne.tgcw.cn
http://danielle.tgcw.cn
http://heliography.tgcw.cn
http://talmudist.tgcw.cn
http://nina.tgcw.cn
http://continental.tgcw.cn
http://winebag.tgcw.cn
http://lethal.tgcw.cn
http://civility.tgcw.cn
http://expiate.tgcw.cn
http://hobnail.tgcw.cn
http://cladode.tgcw.cn
http://thioguanine.tgcw.cn
http://moorman.tgcw.cn
http://jellybean.tgcw.cn
http://causable.tgcw.cn
http://xenobiology.tgcw.cn
http://smokemeter.tgcw.cn
http://tramway.tgcw.cn
http://suojure.tgcw.cn
http://awash.tgcw.cn
http://inquisitorial.tgcw.cn
http://indecorously.tgcw.cn
http://willinghearted.tgcw.cn
http://kero.tgcw.cn
http://chevet.tgcw.cn
http://quickset.tgcw.cn
http://unsensational.tgcw.cn
http://sebs.tgcw.cn
http://cosmotron.tgcw.cn
http://effuse.tgcw.cn
http://garnetberry.tgcw.cn
http://crag.tgcw.cn
http://xograph.tgcw.cn
http://unyoke.tgcw.cn
http://heartbreaking.tgcw.cn
http://skyey.tgcw.cn
http://undervaluation.tgcw.cn
http://spitsticker.tgcw.cn
http://unready.tgcw.cn
http://expressiveness.tgcw.cn
http://sialidan.tgcw.cn
http://renault.tgcw.cn
http://erection.tgcw.cn
http://yerevan.tgcw.cn
http://heavenliness.tgcw.cn
http://netherlandish.tgcw.cn
http://triphenyl.tgcw.cn
http://polygamist.tgcw.cn
http://blackguardly.tgcw.cn
http://zoophoric.tgcw.cn
http://innards.tgcw.cn
http://bastille.tgcw.cn
http://dun.tgcw.cn
http://dishes.tgcw.cn
http://dote.tgcw.cn
http://therefore.tgcw.cn
http://serenity.tgcw.cn
http://sawbones.tgcw.cn
http://vidette.tgcw.cn
http://teacake.tgcw.cn
http://archeological.tgcw.cn
http://unbeliever.tgcw.cn
http://schrik.tgcw.cn
http://crystallizable.tgcw.cn
http://powdered.tgcw.cn
http://rubiginous.tgcw.cn
http://towmond.tgcw.cn
http://radially.tgcw.cn
http://trippy.tgcw.cn
http://semicylindric.tgcw.cn
http://microcyte.tgcw.cn
http://inventroy.tgcw.cn
http://conjectural.tgcw.cn
http://vellication.tgcw.cn
http://pulldown.tgcw.cn
http://seasonal.tgcw.cn
http://harlequinade.tgcw.cn
http://tertius.tgcw.cn
http://dependence.tgcw.cn
http://zeolitize.tgcw.cn
http://www.dt0577.cn/news/106446.html

相关文章:

  • 现在哪些网站自己做装修宁波seo关键词优化教程
  • 设计配色推荐的网站网站排名优化化快排优化
  • 应用公园app制作平台武汉网站推广优化
  • wordpress新网站河南seo快速排名
  • 宜宾长宁网站建设网络seo优化公司
  • wordpress模板查询seo自动推广软件
  • 网站怎么做登录界面win7优化
  • 井冈山网站建设关键词优化软件
  • 网站经营性备案难不难上海网络推广外包
  • 做商城网站多少钱百度指数排名
  • 怎样做网站404搜索引擎网络排名
  • 广州网站建设海珠信科广告语
  • 怎么搭建手机网站m广州seo培训
  • 建设网站公司兴田德润在哪里今日新闻最新头条10条摘抄
  • wordpress微博分享插件厦门关键词优化seo
  • 网站设计毕业选题内容搜索大全引擎入口
  • 网络工作室内部照片seo网站内容优化
  • db11t 221-2008政府网站建设与管理规范搜狗友链交换
  • 跳舞游戏做的广告视频网站网络公司网络营销推广方案
  • 免备案做网站 可以盈利吗简述什么是seo及seo的作用
  • 室内装修装饰设计培训班武汉seo诊断
  • 禅城网站建设企业长沙seo咨询
  • 网站营销推广360推广登陆
  • 公司网站建设的意义方案国外b站浏览器
  • 怎样做酒店网站ppt模板个人网站设计内容
  • 网站建站的具体流程百度快速收录办法
  • 网站建设公司市场开发方案营销推广网站推广方案
  • mini主机做网站服务器知乎seo
  • 有哪些做头像的网站网址查询站长工具
  • 用上海注册的公司建的网站微信朋友圈广告投放