Jackson 注解 -- 使用构造器

    xiaoxiao2024-10-13  82

    – Start

    点击此处观看本系列配套视频。


    如果你的类没有 setter 方法,我们也可以使用注解 @JsonCreator 修饰构造器。

    package shangbo.jackson.demo15; import org.apache.commons.lang3.builder.ToStringBuilder; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; public class Person { private String firstname; private String lastname; @JsonCreator public Person( @JsonProperty("firstname") String firstname, @JsonProperty("lastname") String lastname) { this.firstname = firstname; this.lastname = lastname; } public String toString() { return ToStringBuilder.reflectionToString(this); } public String getFirstname() { return firstname; } public String getLastname() { return lastname; } } package shangbo.jackson.demo15; import com.fasterxml.jackson.databind.ObjectMapper; public class App { public static void main(String[] args) throws Exception { // 实例化 ObjectMapper 对象 ObjectMapper objectMapper = new ObjectMapper(); // json 消息 String json = "{\"firstname\":\"Bo\",\"lastname\":\"Shang\"}"; // 将 json 转成对象 Person shangbo = objectMapper.readValue(json, Person.class); System.out.println(shangbo); } }

    – 更多参见:Jackson 精萃 – 声 明:转载请注明出处 – Last Updated on 2019-05-26 – Written by ShangBo on 2019-05-26 – End

    最新回复(0)