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

工程建设工程信息网seo企业优化顾问

工程建设工程信息网,seo企业优化顾问,wordpress在线转pdf,上海专业微信网站建设使用 FasterXML Jackson 的注解 JsonTypeInfo 和 JsonSubTypes 可以实现多态类型的处理。在你的 User 类上,你可以添加这些注解来指示 Jackson 如何处理多态类型。 以下是使用 JsonTypeInfo 和 JsonSubTypes 注解的 User 类的修改: import com.fasterx…

使用 FasterXML Jackson 的注解 JsonTypeInfoJsonSubTypes 可以实现多态类型的处理。在你的 User 类上,你可以添加这些注解来指示 Jackson 如何处理多态类型。

以下是使用 JsonTypeInfoJsonSubTypes 注解的 User 类的修改:

import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
@JsonSubTypes({@JsonSubTypes.Type(value = AdminUser.class, name = "admin"),@JsonSubTypes.Type(value = RegularUser.class, name = "regular")
})
public class User {private String name;private int age;// 省略默认构造函数和Getter/Setter方法// ...
}

在这里,JsonTypeInfouse 属性设置为 JsonTypeInfo.Id.NAMEproperty 属性指定了一个标识多态类型的属性名称。JsonSubTypes 注解用于指定子类型,其中 Type 属性指定子类型的类,而 name 属性指定标识该子类型的字符串。这里假设有两个子类型 AdminUserRegularUser

接下来,创建两个子类型类 AdminUserRegularUser

public class AdminUser extends User {private String role;// 省略默认构造函数和Getter/Setter方法// ...
}
public class RegularUser extends User {private boolean subscribed;// 省略默认构造函数和Getter/Setter方法// ...
}

在这里,AdminUserRegularUser 都继承自 User 类,以展示多态的概念。

现在,你可以使用 ObjectMapper 将包含多态类型信息的 JSON 转换为对应的对象,也可以将对象转换为 JSON 字符串。例如:

import com.fasterxml.jackson.databind.ObjectMapper;public class PojoAssemblerWithPolymorphismExample {public static void main(String[] args) throws Exception {ObjectMapper objectMapper = new ObjectMapper();// JSON 包含多态类型信息String json = "{\"type\":\"admin\",\"name\":\"John\",\"age\":30,\"role\":\"administrator\"}";// 将 JSON 转换为对象User user = objectMapper.readValue(json, User.class);// 输出对象信息System.out.println(user.getClass().getSimpleName());if (user instanceof AdminUser) {AdminUser adminUser = (AdminUser) user;System.out.println("Role: " + adminUser.getRole());} else if (user instanceof RegularUser) {RegularUser regularUser = (RegularUser) user;System.out.println("Subscribed: " + regularUser.isSubscribed());}// 创建对象AdminUser adminUser = new AdminUser();adminUser.setName("Alice");adminUser.setAge(25);adminUser.setRole("moderator");// 将对象转换为 JSON 字符串String jsonFromUser = objectMapper.writeValueAsString(adminUser);// 输出转换的 JSON 字符串System.out.println(jsonFromUser);}
}

在这个例子中,JSON 字符串包含了多态类型信息,JsonTypeInfoJsonSubTypes 注解告诉 Jackson 如何处理这种多态情况。通过使用 ObjectMapper,你可以轻松地将 JSON 转换为具体的对象,反之亦然。这在处理复杂的 JSON 数据结构时非常有用。

http://www.dt0577.cn/news/21866.html

相关文章:

  • 科技发展给我们的生活带来的变化福州seo管理
  • 网站开发国际化seo优化公司
  • 广西响应式网站建设网络营销的推广方法
  • 24小时自助平台业务下单seo站内优化
  • 高端网站建设 骆百度域名购买
  • 许昌网站推广公司模板下载网站
  • 武汉seo外包优化加速
  • 博客做资讯类网站地推是什么
  • 做a小视频免费观看网站广告语
  • 做网站用什么云服务器合肥关键词排名提升
  • 建设一个网站需要哪些费用吗国内搜索网站排名
  • 网站例子大全seo是什么服务器
  • 日本儿童网站模板视频号视频怎么看下载链接
  • 百度网站是怎么做的怎样进行seo推广
  • WORDpress文章分类栏目seo优化方案项目策划书
  • 沈阳网站建设咨询如何自己编写网站
  • 做网站 徐州拼多多运营
  • 太原网站建设 网站制作沈阳seo关键词排名
  • 建筑网站源码百度推广客服中心
  • vs网站开发实例2022年每日新闻摘抄10一30字
  • 摄影学校网站模板推广软文怎么写样板
  • 济南济阳网站建设seo网站优化培训价格
  • 无极网站郑州网站优化推广
  • 网站建设及解析流程seo免费
  • 网站链接数怎么做谷歌收录提交入口
  • 网络设计课程有哪些seo推广主要做什么
  • 营口电商平台网站建设推广宣传
  • 建设部网站公示农产品网络营销策划书
  • wordpress简洁风模板seo链接优化
  • 如何给网站的关键词做排名淘宝店铺买卖交易平台