草庐IT

mongo-jackson-mapper

全部标签

java - 反序列化为 JodaTime 时,Jackson 丢失了与日期的时间偏移

我正在尝试使用Jackson序列化然后反序列化一个JodaDateTime对象,但它没有完全反序列化该对象。看起来时区信息丢失了。这段代码:ObjectMappermapper=newObjectMapper();mapper.registerModule(newJodaModule());mapper.configure(com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,false);DateTimedt=DateTime.now();Stringj=mapper.writeVa

java - 如何通过 Jackson 的 JsonGenerator 编写原始 JSON?

我想使用JacksonAPI(JsonFactory,JsonGenerator)生成以下结构的JSON字符串。我该怎么做?预期:{"api":{"Salutaion":"Mr","name":"X"},"additional":{"Hello","World"}}实际:{"api":"{\"Salutaion\":\"Mr\",\"name\":\"X\"}","additional":"{\"Hello\",\"World\"}"}属性api和additional的值将作为字符串提供给我。我应该使用writeObjectField(如下所示)吗?jGenerator.writeOb

java - 如何动态更改使用 DynamoDB 的 Java Mapper 访问的表?

我有几个DynamoDB表,所有表都具有相同结构的条目。我想创建一个POJO来表示所有这些条目,然后使用DynamoDB的MapperAPI加载和保存这些对象。问题是API需要我的POJO上的注释@DynamoDBTable。这是一个编译时注释,需要一个表名参数,因此会阻止我以动态方式使用POJO。DynamoDBMapperConfig似乎旨在允许这种动态行为改变。不幸的是,它对我不起作用:我收到一个客户端DDB错误,提示我的POJO验证失败,因为我在注释中输入了空字符串。我反复寻找为什么我的DynamoDBMapperConfig没有得到尊重,但找不到任何东西。我的代码如下,精简到

java - 如何使用 jackson 序列化 transient 场?

我们使用Jackson的JSON序列化来公开系统的内部状态以调试属性。默认情况下,jackson不会序列化transient字段-但我也希望序列化它们。如何序列化这些字段?我知道的一种方法是为这些字段提供setter/getter-但我不想这样做,因为我有一些我不想被调用的getX方法(例如,有一些setter/getter改变对象状态)。我知道我可以创建注释,但我真的想避免它。所以我的问题是:有没有办法设置jackson序列化所有对象字段?包括短暂的。 最佳答案 我使用Jackson2.4.3的解决方案:privatestatic

java - org.codehaus.jackson.JsonParseException : Unexpected character ('/' (code 47))

我有一个包含json格式的HashMap客户列表的文件。像这样:{"Davide":{"name":"Davide","cf":"FRCDVD","pi":"1234","telephone":"333","website":"www","sector":"Student","address":"Rome"}}这只是列表中的一个客户。每次调用Controller时,我都想从文件中获取数据并将它们转换为HashMap列表。我试着这样做:HashMaplistCustomer=newHashMap();listCustomer=newObjectMapper().readValue(pat

java - 如何比较 JSON 文档并返回与 Jackson 或 Gson 的差异?

我正在使用spring-boot开发后端服务。有一种情况可以比较2-beans(一个是DB对象,另一个是客户端请求的对象)并返回“新元素”、“修改后的元素”,如果没有变化则返回false。2-beans格式如下"sampleList":{"timeStamp":"Thu,21Jun201807:57:00+0000","id":"5b19441ac9e77c000189b991","sampleListTypeId":"type001","friendlyName":"sample","contacts":[{"id":"5b05329cc9e77c000189b950","prior

java - Spark2.2.1 不兼容 Jackson 版本 2.8.8

我的配置是:Scala2.11(插件ScalaIDE)EclipseNeon.3版本(4.6.3)Windows764位我想运行这个简单的scala代码(Esempio.scala):packageit.scala//importopackagesdiSparkimportorg.apache.spark.SparkContextimportorg.apache.spark.SparkConfobjectWordcount{defmain(args:Array[String]){valinputs:Array[String]=newArray[String](2)inputs(0)="

java - Jackson JSON 在序列化之前修改对象

我想在对象被序列化之前修改它。我想编写一个自定义序列化程序来解析对象,然后将其传递给默认对象序列化程序。这是我的:importcom.fasterxml.jackson.core.JsonGenerator;importcom.fasterxml.jackson.core.JsonProcessingException;importcom.fasterxml.jackson.databind.JsonSerializer;importcom.fasterxml.jackson.databind.SerializerProvider;importjava.io.IOException;/

java - Jackson 使用 Enum Key 和 POJO Value 反序列化为 Map

我正在尝试使用Jackson将JSON反序列化为JavaPOJO。在不泄露secret信息的情况下,以下是ObjectMapper反序列化失败时的堆栈跟踪示例:org.codehaus.jackson.map.JsonMappingException:CannotconstructMapkeyoftypecom.example.MyEnumfromString"coins":notavalidrepresentation:CannotconstructMapkeyoftypecom.example.MyEnumfromString"coins":notoneofvaluesforEnu

java - Jackson 多态类型处理 - 属性被丢弃

我有这个JSON模型类,publicclassResponse{@JsonTypeInfo(use=JsonTypeInfo.Id.NAME,include=JsonTypeInfo.As.PROPERTY,property="category")@JsonSubTypes({@Type(value=Series.class,name="Series"),@Type(value=Movies.class,name="Movies")})publicstaticabstractclassAsset{publicStringcategory;publicStringid;}publicst