草庐IT

jackson-annotations

全部标签

java - 如何让 jackson 使用一种方法将类序列化为 JSON?

假设我有以下类(class):publicclassMyClass{privateTestt;publicMyClass(){t=newTest(50);}}publicclassTest{privateinttest;publicTest(inttest){this.test=test;}publicStringtoCustomString(){returntest+"."+test;}}当Jackson序列化MyClass的一个实例时,它将如下所示:{"t":{"test":50}}我是否可以在Test类中放置任何注释以强制Jackson在序列化Test对象时调用toCustomS

java - Jackson - Json 到具有多个条目的 POJO

我知道如果文件User.json有{"name":{"first":"Joe","last":"Sixpack"},"gender":"MALE","verified":false,"userImage":"Rm9vYmFyIQ=="}我可以像这样构造一个用户对象:Useruser=mapper.readValue(newFile("user.json"),User.class);但是,如果文件User.json具有以下内容,我该如何构建对象列表:{"name":{"first":"Joe","last":"Sixpack"},"gender":"MALE","verified":fa

java - 用于 map 序列化的 Jackson 模块

我有一个类,其中包含一个映射(具有非字符串键)和一些其他字段。publicclassMyClass(){privateMapmap;privateStringsomeField;publicMyClass(Mapmap,StringsomeField){this.map=map;this.someField=someField;}//Getters&Setters}我想使用Jackson序列化和反序列化此类。我看到了一种不同的方法,并决定尝试使用jacksonmodules.我关注了thispost并扩展了JsonDeserializer和JsonSerializer。问题是那些类应该

java - 设置 Jackson ObjectMapper 类不对 double 使用科学记数法

我正在为JsonSchema使用库com.fasterxml.jackson库,当我使用以下代码为整数模式设置范围时,我正在创建一个IntegerSchema对象:main(){IntegerSchemaintSchema=newIntegerSchema();//setMaximumacceptsDoubleobjectintSchema.setMaximum(newDouble(102000000));//setMaximumacceptsDoubleobjectintSchema.setMinimum(newDouble(100));printJsonSchema(intSche

java - 用于自定义值序列化的 Jackson 自定义注释

我正在尝试创建会影响序列化值的自定义jackson注释。含义:classX{@Unit("mm")intlenght;...}现在序列化对象X(10)会导致:{"lenght":"10mm"}我怎样才能做到这一点? 最佳答案 importcom.fasterxml.jackson.core.JsonGenerationException;importcom.fasterxml.jackson.core.JsonGenerator;importcom.fasterxml.jackson.core.JsonProcessingExcep

java - 可以配置 Jackson-Json Mapper 以根据它正在序列化的对象排除属性吗?

假设我有一些对象,例如带有地址对象列表的业务,以及包含业务的订单。是否可以配置为当订单被序列化时它从业务对象中排除地址列表,而当业务被序列化时它包括列表?我正在使用ajax为RIA提取数据,在处理订单时我并不真正关心地址数据,但在处理业务时我确实需要列表。我还使用Hibernate来实现持久化,因此这确实是一种效率和性能优化。 最佳答案 如果我正确理解问题,是的,我认为JSONViews因为jackson会允许的。您基本上会为同一类型创建两个不同的View(配置文件),然后选择用于序列​​化的View。

java - Spring 数据 : is it possible to have subqueries in the Query annotation?

我想知道是否可以在@Query注释中包含子查询(org.springframework.data.jpa.repository.Query;)我在第一个子查询括号中收到QuerySyntaxException。这是我的问题@Query(value="selectc1fromComplaintModelc1,"+"(selectc2.id,min(cb.termDate)minDatefromComplaintModelc2"+"joinc2.complaintBulletscbjoincb.statusswheres.code=?1"+"groupbyc2.id)tmpwherec1.

java - Jackson 库 JSON 映射器到字符串

我有一个类(A和B是我的对象)publicA{privateListb;privateintc;}我有一个字符串变量temp。所以我会在这个变量中保存我的对象的JSON字符串。怎么办?我试过这两种方法,但没有结果。publicvoidsave(){ObjectMappermapper=newObjectMapper();Stringtemp=mapper.writeValueAsString(a);}publicvoidread(Stringtemp){ObjectMappermapper=newObjectMapper();Aa=mapper.readValue(temp,A.cla

java - Java Annotation 的默认属性

用户定义注释中两个元注释(Target和Retention)的确切默认值是多少?public@interfaceAnnotationWithDefaultProps{} 最佳答案 根据源代码,它们都没有默认值,这意味着您必须在每次使用注解时提供默认值。javadoc中定义了缺失注解的含义:对于Target来说就是IfaTargetmeta-annotationisnotpresentonanannotationtypedeclaration,thedeclaredtypemaybeusedonanyprogramelement.对于

java - 如何使用 Jackson JSON 将 JSON 字符串转换为 Map<String, Set<String>>

我知道将JSON字符串转换为Map的实现通过:publicHashMapgetMapFromJson(Stringjson,ClasskeyClazz,ClassvalueClazz)throwsTMMIDConversionException{if(StringUtils.isEmpty(json)){returnnull;}try{ObjectMappermapper=getObjectMapper();HashMapmap=mapper.readValue(json,TypeFactory.defaultInstance().constructMapType(HashMap.cl