diff --git a/assertj/pom.xml b/assertj/pom.xml
index 421afd40a5..df55ebba4b 100644
--- a/assertj/pom.xml
+++ b/assertj/pom.xml
@@ -1,7 +1,6 @@
-
+
4.0.0
com.baeldung
@@ -9,11 +8,18 @@
1.0.0-SNAPSHOT
+
com.google.guava
guava
- 19.0
+ ${guava.version}
+
+ org.assertj
+ assertj-guava
+ 3.0.0
+
+
junit
junit
@@ -26,11 +32,7 @@
3.5.1
test
-
- org.assertj
- assertj-guava
- 3.0.0
-
+
@@ -46,4 +48,9 @@
+
+
+ 19.0
+
+
\ No newline at end of file
diff --git a/core-java/pom.xml b/core-java/pom.xml
index bce97d1148..a5e89d2a76 100644
--- a/core-java/pom.xml
+++ b/core-java/pom.xml
@@ -174,7 +174,7 @@
5.1.38
- 2.7.2
+ 2.7.8
1.7.13
diff --git a/gson-jackson-performance/README.md b/gson-jackson-performance/README.md
deleted file mode 100644
index 5b08f6cdec..0000000000
--- a/gson-jackson-performance/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-## Performance of Gson and Jackson
-
-Standalone java programs to measure the performance of both JSON APIs based on file size and object graph complexity.
diff --git a/gson-jackson-performance/pom.xml b/gson-jackson-performance/pom.xml
deleted file mode 100644
index 1ea43bd7fa..0000000000
--- a/gson-jackson-performance/pom.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-
- 4.0.0
-
- com.baeldung
- gson-jackson-performance
- 0.0.1-SNAPSHOT
- jar
-
- gson-jackson-performance
- http://maven.apache.org
-
-
- UTF-8
-
-
-
- gson-jackson-performance
-
-
- src/main/resources
- true
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.8
- 1.8
-
-
-
-
-
-
-
-
-
-
- com.google.code.gson
- gson
- 2.5
-
-
-
- com.fasterxml.jackson.core
- jackson-databind
- 2.7.1-1
-
-
-
- junit
- junit
- 3.8.1
- test
-
-
-
- log4j
- log4j
- 1.2.17
-
-
-
-
-
-
-
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataGeneration.java b/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataGeneration.java
deleted file mode 100644
index b69d306edf..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataGeneration.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.baeldung.data.complex;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.baeldung.data.utility.Utility;
-import com.baeldung.pojo.complex.AddressDetails;
-import com.baeldung.pojo.complex.ContactDetails;
-import com.baeldung.pojo.complex.CustomerAddressDetails;
-import com.baeldung.pojo.complex.CustomerPortfolioComplex;
-
-/**
- *
- * This class is responsible for generating data for complex type object
- */
-
-public class ComplexDataGeneration {
-
- public static CustomerPortfolioComplex generateData() {
- List customerAddressDetailsList = new ArrayList();
- for (int i = 0; i < 600000; i++) {
- CustomerAddressDetails customerAddressDetails = new CustomerAddressDetails();
- customerAddressDetails.setAge(20);
- customerAddressDetails.setFirstName(Utility.generateRandomName());
- customerAddressDetails.setLastName(Utility.generateRandomName());
-
- List addressDetailsList = new ArrayList();
- customerAddressDetails.setAddressDetails(addressDetailsList);
-
- for (int j = 0; j < 2; j++) {
- AddressDetails addressDetails = new AddressDetails();
- addressDetails.setZipcode(Utility.generateRandomZip());
- addressDetails.setAddress(Utility.generateRandomAddress());
-
- List contactDetailsList = new ArrayList();
- addressDetails.setContactDetails(contactDetailsList);
-
- for (int k = 0; k < 2; k++) {
- ContactDetails contactDetails = new ContactDetails();
- contactDetails.setLandline(Utility.generateRandomPhone());
- contactDetails.setMobile(Utility.generateRandomPhone());
- contactDetailsList.add(contactDetails);
- contactDetails = null;
- }
-
- addressDetailsList.add(addressDetails);
- addressDetails = null;
- contactDetailsList = null;
- }
- customerAddressDetailsList.add(customerAddressDetails);
- customerAddressDetails = null;
-
- if (i % 6000 == 0) {
- Runtime.getRuntime().gc();
- }
- }
-
- CustomerPortfolioComplex customerPortfolioComplex = new CustomerPortfolioComplex();
- customerPortfolioComplex.setCustomerAddressDetailsList(customerAddressDetailsList);
- customerAddressDetailsList = null;
- return customerPortfolioComplex;
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataGson.java b/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataGson.java
deleted file mode 100644
index b97893e8f1..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataGson.java
+++ /dev/null
@@ -1,91 +0,0 @@
-package com.baeldung.data.complex;
-
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import com.baeldung.data.utility.Utility;
-import com.baeldung.pojo.complex.CustomerPortfolioComplex;
-
-import com.google.gson.Gson;
-
-/**
- *
- * This class is responsible for performing functions for Complex type
- * GSON like
- * Java to Json
- * Json to Map
- * Json to Java Object
- */
-
-public class ComplexDataGson {
-
- private static final Logger logger = Logger.getLogger(ComplexDataGson.class);
-
- static Gson gson = new Gson();
-
- static long generateJsonAvgTime = 0L;
-
- static long parseJsonToMapAvgTime = 0L;
-
- static long parseJsonToActualObjectAvgTime = 0L;
-
- public static void main(String[] args) {
- CustomerPortfolioComplex customerPortfolioComplex = ComplexDataGeneration.generateData();
- int j = 50;
- for (int i = 0; i < j; i++) {
- logger.info("-------Round " + (i + 1));
- String jsonStr = generateJson(customerPortfolioComplex);
- logger.info("Size of Complex content Jackson :: " + Utility.bytesIntoMB(jsonStr.getBytes().length));
- logger.info("--------------------------------------------------------------------------");
- parseJsonToMap(jsonStr);
- parseJsonToActualObject(jsonStr);
- jsonStr = null;
- }
-
- generateJsonAvgTime = generateJsonAvgTime / j;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime / j;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime / j;
-
- logger.info("--------------------------------------------------------------------------");
- logger.info("Average Time to Generate JSON : " + generateJsonAvgTime);
- logger.info("Average Time to Parse JSON To Map : " + parseJsonToMapAvgTime);
- logger.info("Average Time to Parse JSON To Actual Object : " + parseJsonToActualObjectAvgTime);
- logger.info("--------------------------------------------------------------------------");
- }
-
- private static String generateJson(CustomerPortfolioComplex customerPortfolioComplex) {
- Runtime.getRuntime().gc();
- long startParsTime = System.nanoTime();
- String json = gson.toJson(customerPortfolioComplex);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- generateJsonAvgTime = generateJsonAvgTime + elapsedTime;
- logger.info("Json Generation Time(ms):: " + elapsedTime);
- return json;
- }
-
- private static void parseJsonToMap(String jsonStr) {
- long startParsTime = System.nanoTime();
- Map parsedMap = gson.fromJson(jsonStr , Map.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime + elapsedTime;
- logger.info("Generating Map from json Time(ms):: " + elapsedTime);
- logger.info("--------------------------------------------------------------------------");
- parsedMap = null;
- Runtime.getRuntime().gc();
- }
-
- private static void parseJsonToActualObject(String jsonStr) {
- long startParsTime = System.nanoTime();
- CustomerPortfolioComplex customerPortfolioComplex = gson.fromJson(jsonStr , CustomerPortfolioComplex.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime + elapsedTime;
- logger.info("Generating Actual Object from json Time(ms):: " + elapsedTime);
- logger.info("--------------------------------------------------------------------------");
- customerPortfolioComplex = null;
- Runtime.getRuntime().gc();
-
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataJackson.java b/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataJackson.java
deleted file mode 100644
index 07a210fb37..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/data/complex/ComplexDataJackson.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package com.baeldung.data.complex;
-
-import java.io.IOException;
-import java.util.Map;
-
-import com.baeldung.data.utility.Utility;
-import org.apache.log4j.Logger;
-import com.baeldung.pojo.complex.CustomerPortfolioComplex;
-
-import com.fasterxml.jackson.core.JsonParseException;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.JsonMappingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-/**
- *
- * This class is responsible for performing functions for Complex type
- * Jackson like
- * Java to Json
- * Json to Map
- * Json to Java Object
- */
-
-public class ComplexDataJackson {
-
- private static final Logger logger = Logger.getLogger(ComplexDataJackson.class);
-
- static ObjectMapper mapper = new ObjectMapper();
-
- static long generateJsonAvgTime = 0L;
-
- static long parseJsonToMapAvgTime = 0L;
-
- static long parseJsonToActualObjectAvgTime = 0L;
-
- public static void main(String[] args) throws IOException {
- CustomerPortfolioComplex customerPortfolioComplex = ComplexDataGeneration.generateData();
- int j = 50;
- for (int i = 0; i < j; i++) {
- logger.info("-------Round " + (i + 1));
- String jsonStr = generateJson(customerPortfolioComplex);
- logger.info("Size of Complex content Jackson :: " + Utility.bytesIntoMB(jsonStr.getBytes().length));
- logger.info("--------------------------------------------------------------------------");
- parseJsonToMap(jsonStr);
- parseJsonToActualObject(jsonStr);
- jsonStr = null;
- }
-
- generateJsonAvgTime = generateJsonAvgTime / j;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime / j;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime / j;
-
- logger.info("--------------------------------------------------------------------------");
- logger.info("Average Time to Generate JSON : " + generateJsonAvgTime);
- logger.info("Average Time to Parse JSON To Map : " + parseJsonToMapAvgTime);
- logger.info("Average Time to Parse JSON To Actual Object : " + parseJsonToActualObjectAvgTime);
- logger.info("--------------------------------------------------------------------------");
- }
-
- private static String generateJson(CustomerPortfolioComplex customerPortfolioComplex)
- throws JsonProcessingException {
- Runtime.getRuntime().gc();
- long startParsTime = System.nanoTime();
- String json = mapper.writeValueAsString(customerPortfolioComplex);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- generateJsonAvgTime = generateJsonAvgTime + elapsedTime;
- logger.info("Json Generation Time(ms):: " + elapsedTime);
- return json;
- }
-
- private static void parseJsonToMap(String jsonStr) throws JsonParseException , JsonMappingException , IOException {
- long startParsTime = System.nanoTime();
- Map parsedMap = mapper.readValue(jsonStr , Map.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime + elapsedTime;
- logger.info("Generating Map from json Time(ms):: " + elapsedTime);
- parsedMap = null;
- Runtime.getRuntime().gc();
-
- }
-
- private static void parseJsonToActualObject(String jsonStr) throws JsonParseException , JsonMappingException ,
- IOException {
- long startParsTime = System.nanoTime();
- CustomerPortfolioComplex customerPortfolioComplex = mapper.readValue(jsonStr , CustomerPortfolioComplex.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime + elapsedTime;
- logger.info("Generating Actual Object from json Time(ms):: " + elapsedTime);
- customerPortfolioComplex = null;
- Runtime.getRuntime().gc();
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataGeneration.java b/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataGeneration.java
deleted file mode 100644
index 1e186adc72..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataGeneration.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.baeldung.data.simple;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import com.baeldung.data.utility.Utility;
-import com.baeldung.pojo.simple.Customer;
-import com.baeldung.pojo.simple.CustomerPortfolioSimple;
-
-/**
- *
- * This class is responsible for generating data for simple type object
- */
-
-public class SimpleDataGeneration {
-
- public static CustomerPortfolioSimple generateData() {
- List customerList = new ArrayList();
- for (int i = 0; i < 1; i++) {
- Customer customer = new Customer();
- customer.setAge(20);
- customer.setFirstName(Utility.generateRandomName());
- customer.setLastName(Utility.generateRandomName());
-
- customerList.add(customer);
- customer = null;
-
- }
-
- CustomerPortfolioSimple customerPortfolioSimple = new CustomerPortfolioSimple();
- customerPortfolioSimple.setCustomerLists(customerList);
- customerList = null;
- return customerPortfolioSimple;
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataGson.java b/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataGson.java
deleted file mode 100644
index b190313462..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataGson.java
+++ /dev/null
@@ -1,91 +0,0 @@
-package com.baeldung.data.simple;
-
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import com.baeldung.data.utility.Utility;
-import com.baeldung.pojo.simple.CustomerPortfolioSimple;
-
-import com.google.gson.Gson;
-
-/**
- *
- * This class is responsible for performing functions for Simple type
- * GSON like
- * Java to Json
- * Json to Map
- * Json to Java Object
- */
-
-public class SimpleDataGson {
-
- private static final Logger logger = Logger.getLogger(SimpleDataGson.class);
-
- static Gson gson = new Gson();
-
- static long generateJsonAvgTime = 0L;
-
- static long parseJsonToMapAvgTime = 0L;
-
- static long parseJsonToActualObjectAvgTime = 0L;
-
- public static void main(String[] args) {
- CustomerPortfolioSimple customerPortfolioSimple = SimpleDataGeneration.generateData();
- String jsonStr = null;
- int j = 5;
- for (int i = 0; i < j; i++) {
- logger.info("-------Round " + (i + 1));
- jsonStr = generateJson(customerPortfolioSimple);
- logger.info("Size of Simple content Gson :: " + Utility.bytesIntoMB(jsonStr.getBytes().length));
- logger.info("--------------------------------------------------------------------------");
- parseJsonToMap(jsonStr);
- parseJsonToActualObject(jsonStr);
- jsonStr = null;
- }
- generateJsonAvgTime = generateJsonAvgTime / j;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime / j;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime / j;
-
- logger.info("--------------------------------------------------------------------------");
- logger.info("Average Time to Generate JSON : " + generateJsonAvgTime);
- logger.info("Average Time to Parse JSON To Map : " + parseJsonToMapAvgTime);
- logger.info("Average Time to Parse JSON To Actual Object : " + parseJsonToActualObjectAvgTime);
- logger.info("--------------------------------------------------------------------------");
- }
-
- private static String generateJson(CustomerPortfolioSimple customerPortfolioSimple) {
- Runtime.getRuntime().gc();
- long startParsTime = System.nanoTime();
- String json = gson.toJson(customerPortfolioSimple);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- generateJsonAvgTime = generateJsonAvgTime + elapsedTime;
- logger.info("Json Generation Time(ms):: " + elapsedTime);
- return json;
- }
-
- private static void parseJsonToMap(String jsonStr) {
- long startParsTime = System.nanoTime();
- Map parsedMap = gson.fromJson(jsonStr , Map.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime + elapsedTime;
- logger.info("Generating Map from json Time(ms):: " + elapsedTime);
- logger.info("--------------------------------------------------------------------------");
- parsedMap = null;
- Runtime.getRuntime().gc();
-
- }
-
- private static void parseJsonToActualObject(String jsonStr) {
- long startParsTime = System.nanoTime();
- CustomerPortfolioSimple customerPortfolioSimple = gson.fromJson(jsonStr , CustomerPortfolioSimple.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime + elapsedTime;
- logger.info("Generating Actual Object from json Time(ms):: " + elapsedTime);
- logger.info("--------------------------------------------------------------------------");
- customerPortfolioSimple = null;
- Runtime.getRuntime().gc();
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataJackson.java b/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataJackson.java
deleted file mode 100644
index 9330333604..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/data/simple/SimpleDataJackson.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package com.baeldung.data.simple;
-
-import java.io.IOException;
-import java.util.Map;
-
-import com.baeldung.data.utility.Utility;
-import org.apache.log4j.Logger;
-import com.baeldung.pojo.simple.CustomerPortfolioSimple;
-
-import com.fasterxml.jackson.core.JsonParseException;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.JsonMappingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-/**
- *
- * This class is responsible for performing functions for Simple type
- * Jackson like
- * Java to Json
- * Json to Map
- * Json to Java Object
- */
-
-public class SimpleDataJackson {
-
- private static final Logger logger = Logger.getLogger(SimpleDataJackson.class);
-
- static ObjectMapper mapper = new ObjectMapper();
-
- static long generateJsonAvgTime = 0L;
-
- static long parseJsonToMapAvgTime = 0L;
-
- static long parseJsonToActualObjectAvgTime = 0L;
-
- public static void main(String[] args) throws IOException {
- CustomerPortfolioSimple customerPortfolioSimple = SimpleDataGeneration.generateData();
- int j = 50;
- for (int i = 0; i < j; i++) {
- logger.info("-------Round " + (i + 1));
- String jsonStr = generateJson(customerPortfolioSimple);
- logger.info("Size of Simple content Jackson :: " + Utility.bytesIntoMB(jsonStr.getBytes().length));
- logger.info("--------------------------------------------------------------------------");
-
- parseJsonToMap(jsonStr);
- parseJsonToActualObject(jsonStr);
- jsonStr = null;
- }
-
- generateJsonAvgTime = generateJsonAvgTime / j;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime / j;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime / j;
-
- logger.info("--------------------------------------------------------------------------");
- logger.info("Average Time to Generate JSON : " + generateJsonAvgTime);
- logger.info("Average Time to Parse JSON To Map : " + parseJsonToMapAvgTime);
- logger.info("Average Time to Parse JSON To Actual Object : " + parseJsonToActualObjectAvgTime);
- logger.info("--------------------------------------------------------------------------");
- }
-
- private static String generateJson(CustomerPortfolioSimple customerPortfolioSimple) throws JsonProcessingException {
- Runtime.getRuntime().gc();
- long startParsTime = System.nanoTime();
- String json = mapper.writeValueAsString(customerPortfolioSimple);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- generateJsonAvgTime = generateJsonAvgTime + elapsedTime;
- logger.info("Json Generation Time(ms):: " + elapsedTime);
- return json;
- }
-
- private static void parseJsonToMap(String jsonStr) throws JsonParseException , JsonMappingException , IOException {
- long startParsTime = System.nanoTime();
- Map parsedMap = mapper.readValue(jsonStr , Map.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToMapAvgTime = parseJsonToMapAvgTime + elapsedTime;
- logger.info("Generating Map from json Time(ms):: " + elapsedTime);
- logger.info("--------------------------------------------------------------------------");
- parsedMap = null;
- Runtime.getRuntime().gc();
- }
-
- private static void parseJsonToActualObject(String jsonStr) throws JsonParseException , JsonMappingException ,
- IOException {
- long startParsTime = System.nanoTime();
- CustomerPortfolioSimple customerPortfolioSimple = mapper.readValue(jsonStr , CustomerPortfolioSimple.class);
- long endParsTime = System.nanoTime();
- long elapsedTime = endParsTime - startParsTime;
- parseJsonToActualObjectAvgTime = parseJsonToActualObjectAvgTime + elapsedTime;
- logger.info("Generating Actual Object from json Time(ms):: " + elapsedTime);
- customerPortfolioSimple = null;
- Runtime.getRuntime().gc();
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/data/utility/Utility.java b/gson-jackson-performance/src/main/java/com/baeldung/data/utility/Utility.java
deleted file mode 100644
index 8b0c402e47..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/data/utility/Utility.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.baeldung.data.utility;
-
-import java.io.BufferedReader;
-import java.io.FileReader;
-import java.io.IOException;
-import java.util.Random;
-
-public class Utility {
-
- public static String generateRandomName() {
- char[] chars = "abcdefghijklmnopqrstuvwxyz ".toCharArray();
- StringBuilder sb = new StringBuilder();
- Random random = new Random();
- for (int i = 0; i < 8; i++) {
- char c = chars[random.nextInt(chars.length)];
- sb.append(c);
- }
- return sb.toString();
- }
-
- public static String generateRandomAddress() {
- char[] chars = "abcdefghijklmnopqrstuvwxyz ".toCharArray();
- StringBuilder sb = new StringBuilder();
- Random random = new Random();
- for (int i = 0; i < 30; i++) {
- char c = chars[random.nextInt(chars.length)];
- sb.append(c);
- }
- return sb.toString();
- }
-
- public static String generateRandomZip() {
- char[] chars = "1234567890".toCharArray();
- StringBuilder sb = new StringBuilder();
- Random random = new Random();
- for (int i = 0; i < 8; i++) {
- char c = chars[random.nextInt(chars.length)];
- sb.append(c);
- }
- return sb.toString();
- }
-
- public static String generateRandomPhone() {
- char[] chars = "1234567890".toCharArray();
- StringBuilder sb = new StringBuilder();
- Random random = new Random();
- for (int i = 0; i < 10; i++) {
- char c = chars[random.nextInt(chars.length)];
- sb.append(c);
- }
- return sb.toString();
- }
-
- public static String readFile(String fileName , Class clazz) throws IOException {
- String dir = clazz.getResource("/").getFile();
- dir = dir + "/" + fileName;
-
- BufferedReader br = new BufferedReader(new FileReader(dir));
- try {
- StringBuilder sb = new StringBuilder();
- String line = br.readLine();
-
- while (line != null) {
- sb.append(line);
- sb.append(System.lineSeparator());
- line = br.readLine();
- }
- return sb.toString();
- } finally {
- br.close();
- }
- }
-
- public static String bytesIntoMB(long bytes) {
- long kilobyte = 1024;
- long megabyte = kilobyte * 1024;
-
- if ((bytes >= 0) && (bytes < kilobyte)) {
- return bytes + " B";
-
- } else if ((bytes >= kilobyte) && (bytes < megabyte)) {
- return (bytes / kilobyte) + " KB";
-
- } else if ((bytes >= megabyte)) {
- return (bytes / megabyte) + " MB";
- }
-
- return null;
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/AddressDetails.java b/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/AddressDetails.java
deleted file mode 100644
index 79725a97bd..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/AddressDetails.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.baeldung.pojo.complex;
-
-import java.util.List;
-
-public class AddressDetails {
-
- private String address;
-
- private String zipcode;
-
- private List contactDetails;
-
- public String getZipcode() {
- return zipcode;
- }
-
- public void setZipcode(String zipcode) {
- this.zipcode = zipcode;
- }
-
- public List getContactDetails() {
- return contactDetails;
- }
-
- public void setContactDetails(List contactDetails) {
- this.contactDetails = contactDetails;
- }
-
- public String getAddress() {
- return address;
- }
-
- public void setAddress(String address) {
- this.address = address;
- }
-
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/ContactDetails.java b/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/ContactDetails.java
deleted file mode 100644
index 164fe3f470..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/ContactDetails.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.baeldung.pojo.complex;
-
-public class ContactDetails {
-
- private String mobile;
-
- private String landline;
-
- public String getMobile() {
- return mobile;
- }
-
- public void setMobile(String mobile) {
- this.mobile = mobile;
- }
-
- public String getLandline() {
- return landline;
- }
-
- public void setLandline(String landline) {
- this.landline = landline;
- }
-
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/CustomerAddressDetails.java b/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/CustomerAddressDetails.java
deleted file mode 100644
index 9bc5951716..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/CustomerAddressDetails.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.baeldung.pojo.complex;
-
-import java.util.List;
-
-import com.baeldung.pojo.simple.Customer;
-
-public class CustomerAddressDetails extends Customer {
-
- private List addressDetails;
-
- public List getAddressDetails() {
- return addressDetails;
- }
-
- public void setAddressDetails(List addressDetails) {
- this.addressDetails = addressDetails;
- }
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/CustomerPortfolioComplex.java b/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/CustomerPortfolioComplex.java
deleted file mode 100644
index 13f9d240b8..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/pojo/complex/CustomerPortfolioComplex.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.baeldung.pojo.complex;
-
-import java.util.List;
-
-public class CustomerPortfolioComplex {
-
- private List customerAddressDetailsList;
-
- public List getCustomerAddressDetailsList() {
- return customerAddressDetailsList;
- }
-
- public void setCustomerAddressDetailsList(List customerAddressDetailsList) {
- this.customerAddressDetailsList = customerAddressDetailsList;
- }
-
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/pojo/simple/Customer.java b/gson-jackson-performance/src/main/java/com/baeldung/pojo/simple/Customer.java
deleted file mode 100644
index 3d5668f85a..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/pojo/simple/Customer.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.baeldung.pojo.simple;
-
-
-public class Customer {
-
- private String firstName;
-
- private String lastName;
-
- private int age;
-
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public String getLastName() {
- return lastName;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public int getAge() {
- return age;
- }
-
- public void setAge(int age) {
- this.age = age;
- }
-
-}
diff --git a/gson-jackson-performance/src/main/java/com/baeldung/pojo/simple/CustomerPortfolioSimple.java b/gson-jackson-performance/src/main/java/com/baeldung/pojo/simple/CustomerPortfolioSimple.java
deleted file mode 100644
index 7cb684813c..0000000000
--- a/gson-jackson-performance/src/main/java/com/baeldung/pojo/simple/CustomerPortfolioSimple.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.baeldung.pojo.simple;
-
-import java.util.List;
-
-public class CustomerPortfolioSimple {
-
- private List customerLists;
-
- public List getCustomerLists() {
- return customerLists;
- }
-
- public void setCustomerLists(List customerLists) {
- this.customerLists = customerLists;
- }
-}
diff --git a/gson-jackson-performance/src/main/resources/log4j.properties b/gson-jackson-performance/src/main/resources/log4j.properties
deleted file mode 100644
index 371cbc9048..0000000000
--- a/gson-jackson-performance/src/main/resources/log4j.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-# Root logger option
-log4j.rootLogger=DEBUG, file
-
-# Redirect log messages to console
-# log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-# log4j.appender.stdout.Target=System.out
-# log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-# log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
-
-# Redirect log messages to a log file, support file rolling.
-log4j.appender.file=org.apache.log4j.RollingFileAppender
-log4j.appender.file.File=log4j-application.log
-log4j.appender.file.MaxFileSize=5MB
-log4j.appender.file.MaxBackupIndex=10
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
\ No newline at end of file
diff --git a/gson/pom.xml b/gson/pom.xml
index 4f331f6fd9..d864c289c2 100644
--- a/gson/pom.xml
+++ b/gson/pom.xml
@@ -19,7 +19,7 @@
com.google.guava
guava
- 18.0
+ ${guava.version}
commons-io
diff --git a/guava18/pom.xml b/guava18/pom.xml
index 6002b37d74..e26eb7313e 100644
--- a/guava18/pom.xml
+++ b/guava18/pom.xml
@@ -1,7 +1,6 @@
-
+
4.0.0
com.baeldung
@@ -14,12 +13,15 @@
guava
18.0
+
junit
junit
- 4.12
+ 4.13
+ test
+
diff --git a/guava19/pom.xml b/guava19/pom.xml
index 13f3b471f1..61fbf38575 100644
--- a/guava19/pom.xml
+++ b/guava19/pom.xml
@@ -1,5 +1,6 @@
-
+
4.0.0
com.baeldung
@@ -10,20 +11,23 @@
com.google.guava
guava
- 19.0
+ ${guava.version}
+
junit
junit
4.12
+ test
org.hamcrest
hamcrest-all
1.3
+ test
-
+
@@ -42,4 +46,8 @@
+
+ 19.0
+
+
\ No newline at end of file
diff --git a/handling-spring-static-resources/pom.xml b/handling-spring-static-resources/pom.xml
index aca069e300..6dd0c95026 100644
--- a/handling-spring-static-resources/pom.xml
+++ b/handling-spring-static-resources/pom.xml
@@ -115,6 +115,7 @@
jackson-databind
${jackson.version}
+
org.hibernate
hibernate-validator
@@ -221,8 +222,7 @@
1.9.2.RELEASE
-
- 2.7.2
+ 2.7.8
1.7.13
diff --git a/jackson/pom.xml b/jackson/pom.xml
index 17b0ac507e..e795ad11a2 100644
--- a/jackson/pom.xml
+++ b/jackson/pom.xml
@@ -174,7 +174,7 @@
5.1.38
- 2.7.2
+ 2.7.8
1.7.13
diff --git a/java-cassandra/pom.xml b/java-cassandra/pom.xml
index 265a230eb4..a91c3b9b62 100644
--- a/java-cassandra/pom.xml
+++ b/java-cassandra/pom.xml
@@ -1,56 +1,36 @@
-
+
4.0.0
com.baeldung
cassandra-java-client
1.0.0-SNAPSHOT
-
- cassandra-java-client
-
-
- UTF-8
-
-
- 1.7.21
- 1.1.7
-
-
- 1.3
- 4.12
- 1.10.19
- 6.8
- 3.5.1
-
-
- 3.5.1
-
+
+ cassandra-java-client
+
+
- 3.1.0
-
-
-
-
-
+
com.datastax.cassandra
cassandra-driver-core
${cassandra-driver-core.version}
true
-
+
org.cassandraunit
cassandra-unit
3.0.0.1
-
+
com.google.guava
guava
- 19.0
+ ${guava.version}
-
-
+
+
org.slf4j
@@ -74,16 +54,16 @@
log4j-over-slf4j
${org.slf4j.version}
-
+
- junit
- junit
- ${junit.version}
- test
+ junit
+ junit
+ ${junit.version}
+ test
-
-
-
+
+
+
java-cassandra
@@ -97,6 +77,29 @@
-
+
+
+ UTF-8
+
+ 19.0
+
+
+ 1.7.21
+ 1.1.7
+
+
+ 1.3
+ 4.12
+ 1.10.19
+ 6.8
+ 3.5.1
+
+
+ 3.5.1
+
+
+ 3.1.0
+
+
diff --git a/rest-assured/pom.xml b/rest-assured/pom.xml
index 47241b18bd..e2a2af9cd9 100644
--- a/rest-assured/pom.xml
+++ b/rest-assured/pom.xml
@@ -1,257 +1,226 @@
- 4.0.0
- com.baeldung
- rest-assured
- 1.0
- rest-assured
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.3
-
- 8
- 8
-
-
-
-
-
-
-
- javax.servlet
- javax.servlet-api
- 3.1-b06
-
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ 4.0.0
+ com.baeldung
+ rest-assured
+ 1.0
+ rest-assured
-
-
- javax.servlet
- servlet-api
- 2.5
-
+
+
+ javax.servlet
+ javax.servlet-api
+ 3.1-b06
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+
+
+ org.eclipse.jetty
+ jetty-security
+ 9.2.0.M1
+
+
+ org.eclipse.jetty
+ jetty-servlet
+ 9.2.0.M1
+
+
+ org.eclipse.jetty
+ jetty-servlets
+ 9.2.0.M1
+
+
+ org.eclipse.jetty
+ jetty-io
+ 9.2.0.M1
+
+
+ org.eclipse.jetty
+ jetty-http
+ 9.2.0.M1
+
+
+ org.eclipse.jetty
+ jetty-server
+ 9.2.0.M1
+
+
+ org.eclipse.jetty
+ jetty-util
+ 9.2.0.M1
+
-
-
- org.eclipse.jetty
- jetty-security
- 9.2.0.M1
-
+
+ org.slf4j
+ slf4j-api
+ 1.7.21
+
-
-
- org.eclipse.jetty
- jetty-servlet
- 9.2.0.M1
-
+
+ log4j
+ log4j
+ 1.2.17
+
+
+ org.slf4j
+ slf4j-log4j12
+ 1.7.21
+
-
-
- org.eclipse.jetty
- jetty-servlets
- 9.2.0.M1
-
+
+ commons-logging
+ commons-logging
+ 1.2
+
-
-
- org.eclipse.jetty
- jetty-io
- 9.2.0.M1
-
+
+ org.apache.httpcomponents
+ httpcore
+ 4.4.5
+
-
-
- org.eclipse.jetty
- jetty-http
- 9.2.0.M1
-
+
+ org.apache.commons
+ commons-lang3
+ 3.4
+
+
+ com.github.fge
+ uri-template
+ 0.9
+
+
+ com.googlecode.libphonenumber
+ libphonenumber
+ 7.4.5
+
-
-
- org.eclipse.jetty
- jetty-server
- 9.2.0.M1
-
+
+ javax.mail
+ mail
+ 1.4.7
+
-
-
- org.eclipse.jetty
- jetty-util
- 9.2.0.M1
-
+
+ joda-time
+ joda-time
+ 2.9.4
+
+
+ com.fasterxml.jackson.core
+ jackson-annotations
+ ${jackson.version}
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ ${jackson.version}
+
-
-
- org.slf4j
- slf4j-api
- 1.7.21
-
+
+ com.github.fge
+ msg-simple
+ 1.1
+
-
-
- log4j
- log4j
- 1.2.17
-
-
-
- org.slf4j
- slf4j-log4j12
- 1.7.21
-
+
+ com.github.fge
+ jackson-coreutils
+ 1.8
+
-
-
-
- commons-logging
- commons-logging
- 1.2
-
+
+ com.google.guava
+ guava
+ ${guava.version}
+
+
+ com.github.fge
+ btf
+ 1.2
+
-
- org.apache.httpcomponents
- httpcore
- 4.4.5
-
+
+ org.apache.httpcomponents
+ httpclient
+ 4.5.2
+
-
-
- org.apache.commons
- commons-lang3
- 3.4
-
+
+ org.codehaus.groovy
+ groovy-all
+ 2.4.7
+
-
-
-
- com.github.fge
- uri-template
- 0.9
-
+
+ com.github.tomakehurst
+ wiremock
+ 2.1.7
+
+
+ io.rest-assured
+ rest-assured
+ 3.0.0
+ test
+
+
+ io.rest-assured
+ json-schema-validator
+ 3.0.0
+
+
+ com.github.fge
+ json-schema-validator
+ 2.2.6
+
+
+ com.github.fge
+ json-schema-core
+ 1.2.5
+
+
+ junit
+ junit
+ 4.3
+ test
+
-
-
- com.googlecode.libphonenumber
- libphonenumber
- 7.4.5
-
+
+ org.hamcrest
+ hamcrest-all
+ 1.3
+
+
+ commons-collections
+ commons-collections
+ 3.2.2
+
-
- javax.mail
- mail
- 1.4.7
-
+
-
- joda-time
- joda-time
- 2.9.4
-
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.3
+
+ 8
+ 8
+
+
+
+
-
- com.fasterxml.jackson.core
- jackson-annotations
- 2.8.0
-
+
+ 2.8.3
+ 19.0
+
-
- com.fasterxml.jackson.core
- jackson-databind
- 2.8.0
-
-
-
- com.fasterxml.jackson.core
- jackson-core
- 2.8.0
-
-
-
- com.github.fge
- msg-simple
- 1.1
-
-
-
- com.github.fge
- jackson-coreutils
- 1.8
-
-
-
-
-
- com.google.guava
- guava
- 18.0
-
-
- com.github.fge
- btf
- 1.2
-
-
-
- org.apache.httpcomponents
- httpclient
- 4.5.2
-
-
-
- org.codehaus.groovy
- groovy-all
- 2.4.7
-
-
-
- com.github.tomakehurst
- wiremock
- 2.1.7
-
-
- io.rest-assured
- rest-assured
- 3.0.0
- test
-
-
- io.rest-assured
- json-schema-validator
- 3.0.0
-
-
- com.github.fge
- json-schema-validator
- 2.2.6
-
-
- com.github.fge
- json-schema-core
- 1.2.5
-
-
- junit
- junit
- 4.3
- test
-
-
-
- org.hamcrest
- hamcrest-all
- 1.3
-
-
-
- commons-collections
- commons-collections
- 3.2.2
-
-
-
diff --git a/rest-testing/pom.xml b/rest-testing/pom.xml
index 652f2ab601..819e8de8a5 100644
--- a/rest-testing/pom.xml
+++ b/rest-testing/pom.xml
@@ -156,7 +156,7 @@
- 2.7.2
+ 2.7.8
1.7.13
diff --git a/spring-mvc-java/pom.xml b/spring-mvc-java/pom.xml
index 7361d16b33..54d6eee01a 100644
--- a/spring-mvc-java/pom.xml
+++ b/spring-mvc-java/pom.xml
@@ -6,6 +6,7 @@
0.1-SNAPSHOT
spring-mvc-java
war
+
@@ -34,16 +35,12 @@
spring-messaging
${org.springframework.version}
+
-
- com.fasterxml.jackson.core
- jackson-core
- 2.7.3
-
com.fasterxml.jackson.core
jackson-databind
- 2.7.3
+ ${jackson.version}
@@ -59,6 +56,7 @@
1.2
runtime
+
org.springframework
@@ -95,18 +93,6 @@
${thymeleaf.version}
-
-
- com.fasterxml.jackson.core
- jackson-core
- 2.1.2
-
-
- com.fasterxml.jackson.core
- jackson-databind
- 2.1.2
-
-
org.slf4j
@@ -244,18 +230,23 @@
4.2.5.RELEASE
4.0.4.RELEASE
2.1.4.RELEASE
+ 2.7.8
+
4.3.11.Final
5.1.38
+
1.7.21
1.1.5
5.2.2.Final
+
19.0
3.4
+
1.3
4.12
diff --git a/spring-mvc-xml/pom.xml b/spring-mvc-xml/pom.xml
index 9c65ccdadd..849699cfae 100644
--- a/spring-mvc-xml/pom.xml
+++ b/spring-mvc-xml/pom.xml
@@ -1,4 +1,5 @@
-
+
4.0.0
com.baeldung
0.1-SNAPSHOT
@@ -99,16 +100,11 @@
-
- com.fasterxml.jackson.core
- jackson-core
- 2.7.2
-
-
- com.fasterxml.jackson.core
- jackson-databind
- 2.7.2
-
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ ${jackson.version}
+
@@ -165,6 +161,7 @@
4.2.5.RELEASE
+ 2.7.8
1.7.13
diff --git a/spring-rest-angular/pom.xml b/spring-rest-angular/pom.xml
index 331c9a644c..981ee9dabc 100644
--- a/spring-rest-angular/pom.xml
+++ b/spring-rest-angular/pom.xml
@@ -1,95 +1,102 @@
-
- 4.0.0
- spring-rest-angular
- spring-rest-angular
- com.baeldung
- 1.0
- war
-
- org.springframework.boot
- spring-boot-starter-parent
- 1.3.3.RELEASE
-
-
-
- org.springframework.boot
- spring-boot-starter-tomcat
- provided
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.springframework.data
- spring-data-commons
-
-
- org.springframework.boot
- spring-boot-starter-data-jpa
-
-
- org.hsqldb
- hsqldb
- runtime
-
-
- org.springframework
- spring-test
- test
-
-
- org.apache.commons
- commons-lang3
- 3.3
-
-
- com.google.guava
- guava
- 19.0
-
-
- junit
- junit
- test
-
-
- io.rest-assured
- rest-assured
- 3.0.0
- test
-
-
- io.rest-assured
- spring-mock-mvc
- 3.0.0
- test
-
-
-
- angular-spring-rest-sample
-
+
+ 4.0.0
+ spring-rest-angular
+ spring-rest-angular
+ com.baeldung
+ 1.0
+ war
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.8
- 1.8
-
-
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 1.3.3.RELEASE
+
-
- org.apache.maven.plugins
- maven-war-plugin
-
- false
-
-
+
+
+ org.springframework.boot
+ spring-boot-starter-tomcat
+ provided
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.data
+ spring-data-commons
+
+
+ org.springframework.boot
+ spring-boot-starter-data-jpa
+
+
+ org.hsqldb
+ hsqldb
+ runtime
+
+
+ org.springframework
+ spring-test
+ test
+
+
+ org.apache.commons
+ commons-lang3
+ 3.3
+
+
+ com.google.guava
+ guava
+ ${guava.version}
+
+
+ junit
+ junit
+ test
+
+
+ io.rest-assured
+ rest-assured
+ 3.0.0
+ test
+
+
+ io.rest-assured
+ spring-mock-mvc
+ 3.0.0
+ test
+
+
+
+
+ angular-spring-rest-sample
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.8
+ 1.8
+
+
+
+
+ org.apache.maven.plugins
+ maven-war-plugin
+
+ false
+
+
+
+
+
+
+
+ 19.0
+
-
-
diff --git a/spring-security-rest-digest-auth/pom.xml b/spring-security-rest-digest-auth/pom.xml
index 1eddbc17f8..1880e12a74 100644
--- a/spring-security-rest-digest-auth/pom.xml
+++ b/spring-security-rest-digest-auth/pom.xml
@@ -351,7 +351,7 @@
1.1.3
- 2.7.2
+ 2.7.8
5.2.2.Final
diff --git a/spring-security-rest-full/pom.xml b/spring-security-rest-full/pom.xml
index 77b11f1cb1..dff9f7ed4f 100644
--- a/spring-security-rest-full/pom.xml
+++ b/spring-security-rest-full/pom.xml
@@ -439,7 +439,7 @@
3.6.2
- 2.7.2
+ 2.7.8
1.4.01
diff --git a/spring-security-rest/pom.xml b/spring-security-rest/pom.xml
index 255cf25308..60f3ed41d1 100644
--- a/spring-security-rest/pom.xml
+++ b/spring-security-rest/pom.xml
@@ -109,7 +109,6 @@
-
com.fasterxml.jackson.core
jackson-databind
@@ -117,7 +116,6 @@
-
com.google.guava
guava
@@ -128,8 +126,8 @@
commons-lang3
${commons-lang3.version}
+
-
org.slf4j
slf4j-api
@@ -364,7 +362,7 @@
3.0.1
1.1.0.Final
1.2
- 2.2.2
+ 2.7.8
19.0