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

站长之家网址ip查询网站session

站长之家网址ip查询,网站session,seo实战视频,百度收录排名好的网站本文为官方文档直译版本。原文链接 Spring Boot JSON中文文档 引言Jackson自定义序列化器和反序列化器混入 GsonJSON-B 引言 Spring Boot 提供与三个 JSON 映射库的集成#xff1a; GsonJacksonJSON-B Jackson 是首选的默认库。 Jackson Spring-boot-starter-json 提供了… 本文为官方文档直译版本。原文链接 Spring Boot JSON中文文档 引言Jackson自定义序列化器和反序列化器混入 GsonJSON-B 引言 Spring Boot 提供与三个 JSON 映射库的集成 GsonJacksonJSON-B Jackson 是首选的默认库。 Jackson Spring-boot-starter-json 提供了 Jackson 的自动配置功能Jackson 也是 Spring-boot-starter-json 的一部分。当 Jackson 位于类路径上时会自动配置 ObjectMapper Bean。为自定义 ObjectMapper 的配置提供了多个配置属性。 自定义序列化器和反序列化器 如果使用 Jackson 来序列化和反序列化 JSON 数据您可能需要编写自己的 JsonSerializer 和 JsonDeserializer 类。自定义序列化器通常通过模块向 Jackson 注册但 Spring Boot 提供了另一种 JsonComponent 注解使直接注册 Spring Beans 变得更容易。 您可以在 JsonSerializer、JsonDeserializer 或 KeyDeserializer 实现中直接使用 JsonComponent 注解。也可以在包含序列化器/解序列化器作为内部类的类中使用如下例所示 import java.io.IOException;import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.ObjectCodec; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider;import org.springframework.boot.jackson.JsonComponent;JsonComponent public class MyJsonComponent {public static class Serializer extends JsonSerializerMyObject {Overridepublic void serialize(MyObject value, JsonGenerator jgen, SerializerProvider serializers) throws IOException {jgen.writeStartObject();jgen.writeStringField(name, value.getName());jgen.writeNumberField(age, value.getAge());jgen.writeEndObject();}}public static class Deserializer extends JsonDeserializerMyObject {Overridepublic MyObject deserialize(JsonParser jsonParser, DeserializationContext ctxt) throws IOException {ObjectCodec codec jsonParser.getCodec();JsonNode tree codec.readTree(jsonParser);String name tree.get(name).textValue();int age tree.get(age).intValue();return new MyObject(name, age);}}}ApplicationContext 中的所有 JsonComponent Bean 都会自动向 Jackson 注册。由于 JsonComponent 是用 Component 元标注的因此通常的组件扫描规则也适用。 Spring Boot 还提供了 [JsonObjectSerializer](https://github.com/spring-projects/spring-boot/blob/v3.2.0/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jackson/JsonObjectSerializer.java) 和 JsonObjectDeserializer 基类在序列化对象时它们为标准的 Jackson 版本提供了有用的替代方法。有关详细信息请参见 Javadoc 中的 JsonObjectSerializer 和 JsonObjectDeserializer。 上面的示例可以重写为使用 JsonObjectSerializer/JsonObjectDeserializer 如下 import java.io.IOException;import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.ObjectCodec; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.SerializerProvider;import org.springframework.boot.jackson.JsonComponent; import org.springframework.boot.jackson.JsonObjectDeserializer; import org.springframework.boot.jackson.JsonObjectSerializer;JsonComponent public class MyJsonComponent {public static class Serializer extends JsonObjectSerializerMyObject {Overrideprotected void serializeObject(MyObject value, JsonGenerator jgen, SerializerProvider provider)throws IOException {jgen.writeStringField(name, value.getName());jgen.writeNumberField(age, value.getAge());}}public static class Deserializer extends JsonObjectDeserializerMyObject {Overrideprotected MyObject deserializeObject(JsonParser jsonParser, DeserializationContext context, ObjectCodec codec,JsonNode tree) throws IOException {String name nullSafeValue(tree.get(name), String.class);int age nullSafeValue(tree.get(age), Integer.class);return new MyObject(name, age);}}}混入 Jackson 支持混入注解可用于将附加注解混合到目标类已声明的注解中。Spring Boot 的 Jackson 自动配置会扫描应用程序的包查找注释为 JsonMixin 的类并将它们注册到自动配置的 ObjectMapper 中。注册由 Spring Boot 的 JsonMixinModule 执行。 Gson 为 Gson 提供了自动配置功能。当 Gson 位于类路径上时Gson Bean 会自动配置。为自定义配置提供了多个 spring.gson.* 配置属性。要进行更多控制可以使用一个或多个 GsonBuilderCustomizer Bean。 JSON-B 提供 JSON-B 的自动配置。当 JSON-B API 和实现位于类路径上时Jsonb Bean 将自动配置。首选的 JSON-B 实现是 Eclipse Yasson它提供了依赖关系管理。
http://www.hkea.cn/news/14292581/

相关文章:

  • 做网站属于无形资产还是费用国企央企都玩劳务外包
  • 做网站开视频网站盐地网站建设公司
  • 电子商务网站平台开发建设方案用户浏览网站的方式
  • 青岛网站维护云浮哪有做网站公司
  • 金融做推广的网站网站建设公司简介模板
  • 做网站用的符号wordpress怎么镜像
  • 特斯拉公司的发展历程seo公司赚钱吗
  • 英国做暧小视频网站网络策划专员
  • 临沂医院网站建设开发一个同城app需要多少钱
  • 在线crm客户管理系统如何优化自己的网站
  • 编程开源网站昆明招工网站找普工作建设工作
  • 百度网站建设开场话术学院网页设计模板html代码
  • 科技公司手机端网站嘉兴市城市建设门户网站
  • 最好的商业网站上海地区做旧物回收的网站
  • 网站建设策网络服务提供者接到权利人的通知后未及时采取必要措施
  • 新型城镇化建设网站商城网站源码免费
  • 英文网站建设服务合同做网站的软件下载
  • ps网站导航制作2022手机能看的你们知道
  • 免费下载ppt的网站张家口网站建设电话
  • 珠海市规划建设局网站dedecms 做影网站
  • 如何建设高大上的网站中国十大上市装修公司
  • html网站开发相关书籍wordpress 点赞 开启
  • 找设计方案的网站甘肃多元网络
  • ps做网站的流程现在做网站到底需要多少钱
  • jsp做的网站怎嘛用编写网站 支付宝
  • 个人网站怎样申请icp做网站的镜像是什么意思
  • 做餐饮培训网站广告免费生成网站的app
  • 一般网站建设用什么语言济南全屋定制
  • 企业起名网站怎么做夏天做那个网站致富
  • 做网站教程第一课仿站网站