From bde8a4b73bd56042019bc6388fb70c86c3ea387a Mon Sep 17 00:00:00 2001 From: eugenp Date: Mon, 30 Dec 2013 17:17:49 +0200 Subject: [PATCH] new jackson sandboxed work --- jackson/pom.xml | 11 +++++-- jackson/src/main/resources/example1.json | 12 +++++++ jackson/src/main/resources/example2.json | 10 ++++++ .../org/baeldung/jackson/try1/COrder.java | 32 +++++++++++++++++++ .../jackson/try1/JacksonTryUnitTest.java | 31 ++++++++++++++++++ 5 files changed, 93 insertions(+), 3 deletions(-) create mode 100644 jackson/src/main/resources/example1.json create mode 100644 jackson/src/main/resources/example2.json create mode 100644 jackson/src/test/java/org/baeldung/jackson/try1/COrder.java create mode 100644 jackson/src/test/java/org/baeldung/jackson/try1/JacksonTryUnitTest.java diff --git a/jackson/pom.xml b/jackson/pom.xml index 348e1b8ef2..b5d16d26fc 100644 --- a/jackson/pom.xml +++ b/jackson/pom.xml @@ -13,7 +13,12 @@ com.google.guava guava - 15.0 + 16.0-rc1 + + + commons-io + commons-io + 2.4 @@ -102,10 +107,10 @@ 4.3.0.Final 5.1.27 - + 2.3.0 - + 1.7.5 1.0.11 diff --git a/jackson/src/main/resources/example1.json b/jackson/src/main/resources/example1.json new file mode 100644 index 0000000000..46d2982cec --- /dev/null +++ b/jackson/src/main/resources/example1.json @@ -0,0 +1,12 @@ +{ + "collection": [ + { + "name": "Test order1", + "detail": "ahk ks" + }, + { + "name": "Test order2", + "detail": "Fisteku" + } + ] +} \ No newline at end of file diff --git a/jackson/src/main/resources/example2.json b/jackson/src/main/resources/example2.json new file mode 100644 index 0000000000..f4433731e6 --- /dev/null +++ b/jackson/src/main/resources/example2.json @@ -0,0 +1,10 @@ +[ + { + "name": "Test order1", + "detail": "ahk ks" + }, + { + "name": "Test order2", + "detail": "Fisteku" + } +] \ No newline at end of file diff --git a/jackson/src/test/java/org/baeldung/jackson/try1/COrder.java b/jackson/src/test/java/org/baeldung/jackson/try1/COrder.java new file mode 100644 index 0000000000..f20bccbee2 --- /dev/null +++ b/jackson/src/test/java/org/baeldung/jackson/try1/COrder.java @@ -0,0 +1,32 @@ +package org.baeldung.jackson.try1; + +public class COrder { + private String name; + private String detail; + + // + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getDetail() { + return detail; + } + + public void setDetail(final String detail) { + this.detail = detail; + } + + // + + @Override + public String toString() { + return "COrder [name=" + name + ", detail=" + detail + ", getClass()=" + getClass() + ", hashCode()=" + hashCode() + ", toString()=" + super.toString() + "]"; + } + +} \ No newline at end of file diff --git a/jackson/src/test/java/org/baeldung/jackson/try1/JacksonTryUnitTest.java b/jackson/src/test/java/org/baeldung/jackson/try1/JacksonTryUnitTest.java new file mode 100644 index 0000000000..ce22104475 --- /dev/null +++ b/jackson/src/test/java/org/baeldung/jackson/try1/JacksonTryUnitTest.java @@ -0,0 +1,31 @@ +package org.baeldung.jackson.try1; + +import static org.junit.Assert.assertNotNull; + +import java.io.IOException; +import java.net.URL; +import java.util.Collection; + +import org.junit.Test; + +import com.fasterxml.jackson.core.JsonParseException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.JsonMappingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.google.common.base.Charsets; +import com.google.common.io.Resources; + +public class JacksonTryUnitTest { + + @Test + public final void whenDeserializing_thenCorrect() throws JsonParseException, JsonMappingException, IOException { + final URL url = Resources.getResource("example2.json"); + final String jsonAsString = Resources.toString(url, Charsets.UTF_8); + + final Collection readValues = new ObjectMapper().readValue(jsonAsString, new TypeReference>() { + }); + + assertNotNull(readValues); + } + +}