草庐IT

jackson-module-kotlin

全部标签

java - 在使用 @JsonValue 反序列化类时,Jackson 更喜欢私有(private)构造函数而不是 @JsonCreator

我有一个带有私有(private)构造函数和静态工厂的简单类。我希望该类序列化为数字,所以我用@JsonValue注释了该字段的getter。然而,Jackson似乎更喜欢私有(private)构造函数而不是静态工厂,即使我用@JsonCreator注释静态工厂也是如此。如果我用@JsonIgnore注释私有(private)构造函数,它会起作用,但感觉有点不对劲。我看到一些帖子声称@JsonCreator只有在参数用@JsonProperty注释时才有效;但是,序列化为JSON对象的对象似乎就是这种情况。此对象被序列化为数字,因此没有属性可提供给注释。有什么我想念的吗?示例类:pac

java - 使用 jackson 转换 Java 对象时如何忽略可选属性

我正在使用Jackson1.9.2(org.codehaus.jackson)从Java对象转换为匹配的JSON结构。这是我的java对象:ClassColorLight{Stringtype;booleanisOn;Stringvalue;publicStringgetType(){returntype;}publicsetType(Stringtype){this.type=type;}publicbooleangetIsOn(){returnisOn;}publicsetIsOn(booleanisOn){this.isOn=isOn;}publicStringgetValue(

java - Jackson JSON - 解码时出现 "no single-String constructor/factory method"错误

最简单的情况给我带来了麻烦。我第一次遇到它。我能够解码稍微复杂的json,但这个简单的失败了。什么会导致这种情况?为什么jackson只用一个字符串就有问题?保存用户角色名称的简单类。publicclassUpdateUserRole{privateStringname;publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}}Controller内部publicvoidupdateUserRole(@PathVariableLongid,@RequestBodyUpdateUser

java - 使用 Jackson 将 java.time.localdate 序列化为 json

我正在编写一个Java8SpringMVC应用程序,该应用程序使用REST服务与遗留ProgressOpenEdge应用程序进行通信(我为此使用了Spring的RestTemplate)。我需要从Progress应用程序读取和写入的数据包含一些日期。在Java应用程序中,我使用java.time.LocalDate数据类型来表示这些字段,并且我使用Jackson将数据序列化/反序列化到Json中/从Json中反序列化。我遇到的问题如下。当我从进度应用程序发送数据时,日期作为“2015-01-02”发送,并按预期作为LocalDate存储在我的Java实体中。当数据发送到Web前端时,J

java - 如何使用jackson在java中将json转换为POJO

我正在使用spring3.1.2,我需要将一个json对象解析为POJO。这是我需要解析的json:{"Person":{"id":"2"},"Dog":{"dateOfBirth":"2012-08-2000:00:00","price":"10.00"}}我需要将这个json对象(由两个对象组合而成)转换为一个POJO,这里是:publicclassMyClass{publicMyClass(){}publicMyClass(StringpersonsId,TimeStampdogsDateOfBirth,BigDecimaldogsPrice){....//assigneachp

Android(Kotlin)连接阿里云MySQL实现登录注册

做课设的时候摸索了好一阵子使用kotlin语言连接阿里云Mysql的方法,现在放出来供其他新手参考少走写弯路。目录实现步骤1.配置阿里云数据库2.Android代码 实现步骤1.配置阿里云数据库登录阿里云账号->阿里云官网购买或者申请一个云数据库RDS MySQL版(我是免费申请使用三个月)->申请免费试用阿里云官网配置结束后,即可点击控制台,点击云数据库RDS点击实例列表,可以看到刚刚申请的数据库实例正在创建中,等待创建完毕。创建完毕后,点击蓝色实例ID进入后,在基本信息中点击设置白名单修改default,将0.0.0.0/0加入白名单返回实例列表界面,点击右侧数据库连接,开通外网地址(后续

java - 如何使用 jackson 将 java 对象序列化为 xml 属性?

有没有办法通过jackson将javavar(例如int)序列化为xml属性?我找不到任何特殊的jackson或json注释(@XmlAttribute@javax.xml.bind.annotation.XmlAttribute)来实现这一点。例如publicclassPoint{privateintx,y,z;publicPoint(finalintx,finalinty,finalintz){this.x=x;this.y=y;this.z=z;}@javax.xml.bind.annotation.XmlAttributepublicintgetX(){returnx;}...

java - jackson - 不要序列化惰性对象

我有一个实体:@EntitypublicclassBook{@Id@GeneratedValue(strategy=GenerationType.AUTO)privatelongid;@ColumnprivateStringtitle;@OneToMany(fetch=FetchType.LAZY,mappedBy=("movie"),cascade=CascadeType.ALL)privateListgenre;}然后我有一个Controller,其目的是检索书籍,我的问题是,流派字段包含在我的Controller的json响应中。有什么方法可以排除在jackson序列化对象时延迟

java - 用于反序列化的 Jackson 构建器模式

Requirements:WouldliketouseBuilderpatternJacksonfordeserializationWouldnotliketousesetters我确信jackson是基于POJO上的getter和setter工作的。因为,我有builder模式,所以没有必要再有二传手了。在这种情况下,我们如何指示jackson在Builder模式的帮助下进行反序列化?如有任何帮助,我们将不胜感激。我试过@JsonDeserialize(builder=MyBuilder.class)但没有用。这在RESTjersey中是必需的。我目前是用于jackson编码和解码的