diff --git a/core-java-collections/README.md b/core-java-collections/README.md
index e366232f74..684beda281 100644
--- a/core-java-collections/README.md
+++ b/core-java-collections/README.md
@@ -4,37 +4,23 @@
### Relevant Articles:
- [Immutable ArrayList in Java](http://www.baeldung.com/java-immutable-list)
-- [Converting between an Array and a List in Java](http://www.baeldung.com/convert-array-to-list-and-list-to-array)
-- [Converting between an Array and a Set in Java](http://www.baeldung.com/convert-array-to-set-and-set-to-array)
-- [Converting between a List and a Set in Java](http://www.baeldung.com/convert-list-to-set-and-set-to-list)
-- [Convert a Map to an Array, List or Set in Java](http://www.baeldung.com/convert-map-values-to-array-list-set)
- [Guide to the Java ArrayList](http://www.baeldung.com/java-arraylist)
- [Random List Element](http://www.baeldung.com/java-random-list-element)
- [Java - Combine Multiple Collections](http://www.baeldung.com/java-combine-multiple-collections)
-- [Guide to WeakHashMap in Java](http://www.baeldung.com/java-weakhashmap)
-- [Guide to the Guava BiMap](http://www.baeldung.com/guava-bimap)
-- [The Java HashMap Under the Hood](http://www.baeldung.com/java-hashmap)
-- [A Guide to LinkedHashMap in Java](http://www.baeldung.com/java-linked-hashmap)
-- [A Guide to TreeMap in Java](http://www.baeldung.com/java-treemap)
- [Removing all nulls from a List in Java](http://www.baeldung.com/java-remove-nulls-from-list)
- [Removing all duplicates from a List in Java](http://www.baeldung.com/java-remove-duplicates-from-list)
- [Flattening Nested Collections in Java](http://www.baeldung.com/java-flatten-nested-collections)
- [HashSet and TreeSet Comparison](http://www.baeldung.com/java-hashset-vs-treeset)
-- [Iterate over a Map in Java](http://www.baeldung.com/java-iterate-map)
- [Collect a Java Stream to an Immutable Collection](http://www.baeldung.com/java-stream-immutable-collection)
-- [Converting a List to String in Java](http://www.baeldung.com/java-list-to-string)
- [Introduction to the Java ArrayDeque](http://www.baeldung.com/java-array-deque)
- [A Guide to HashSet in Java](http://www.baeldung.com/java-hashset)
- [A Guide to TreeSet in Java](http://www.baeldung.com/java-tree-set)
-- [Java TreeMap vs HashMap](http://www.baeldung.com/java-treemap-vs-hashmap)
- [How to TDD a List Implementation in Java](http://www.baeldung.com/java-test-driven-list)
-- [How to Store Duplicate Keys in a Map in Java?](http://www.baeldung.com/java-map-duplicate-keys)
- [Getting the Size of an Iterable in Java](http://www.baeldung.com/java-iterable-size)
- [Iterating Backward Through a List](http://www.baeldung.com/java-list-iterate-backwards)
- [How to Filter a Collection in Java](http://www.baeldung.com/java-collection-filtering)
- [Add Multiple Items to an Java ArrayList](http://www.baeldung.com/java-add-items-array-list)
- [Remove the First Element from a List](http://www.baeldung.com/java-remove-first-element-from-list)
-- [How to Convert List to Map in Java](http://www.baeldung.com/java-list-to-map)
- [Initializing HashSet at the Time of Construction](http://www.baeldung.com/java-initialize-hashset)
- [Removing the First Element of an Array](https://www.baeldung.com/java-array-remove-first-element)
- [Fail-Safe Iterator vs Fail-Fast Iterator](http://www.baeldung.com/java-fail-safe-vs-fail-fast-iterator)
@@ -47,12 +33,8 @@
- [Remove All Occurrences of a Specific Value from a List](https://www.baeldung.com/java-remove-value-from-list)
- [Thread Safe LIFO Data Structure Implementations](https://www.baeldung.com/java-lifo-thread-safe)
- [Collections.emptyList() vs. New List Instance](https://www.baeldung.com/java-collections-emptylist-new-list)
-- [Initialize a HashMap in Java](https://www.baeldung.com/java-initialize-hashmap)
- [Differences Between Collection.clear() and Collection.removeAll()](https://www.baeldung.com/java-collection-clear-vs-removeall)
- [Performance of contains() in a HashSet vs ArrayList](https://www.baeldung.com/java-hashset-arraylist-contains-performance)
-- [Get the Key for a Value from a Java Map](https://www.baeldung.com/java-map-key-from-value)
- [Time Complexity of Java Collections](https://www.baeldung.com/java-collections-complexity)
-- [Sort a HashMap in Java](https://www.baeldung.com/java-hashmap-sort)
-- [Finding the Highest Value in a Java Map](https://www.baeldung.com/java-find-map-max)
- [Operating on and Removing an Item from Stream](https://www.baeldung.com/java-use-remove-item-stream)
- [An Introduction to Synchronized Java Collections](https://www.baeldung.com/java-synchronized-collections)
diff --git a/core-java-collections/pom.xml b/core-java-collections/pom.xml
index b4a6e26d13..39ddc17684 100644
--- a/core-java-collections/pom.xml
+++ b/core-java-collections/pom.xml
@@ -14,22 +14,11 @@
-
- net.sourceforge.collections
- collections-generic
- ${collections-generic.version}
-
org.apache.commons
commons-collections4
${commons-collections4.version}
-
- com.jayway.awaitility
- awaitility
- ${avaitility.version}
- test
-
org.apache.commons
commons-lang3
@@ -67,12 +56,6 @@
commons-exec
1.3
-
-
- one.util
- streamex
- 0.6.5
-
diff --git a/core-java/README.md b/core-java/README.md
index 9e38dfc47d..1cbbfe2b39 100644
--- a/core-java/README.md
+++ b/core-java/README.md
@@ -29,7 +29,6 @@
- [AWS Lambda With Java](http://www.baeldung.com/java-aws-lambda)
- [Introduction to Nashorn](http://www.baeldung.com/java-nashorn)
- [Chained Exceptions in Java](http://www.baeldung.com/java-chained-exceptions)
-- [A Quick JUnit vs TestNG Comparison](http://www.baeldung.com/junit-vs-testng)
- [Java Primitive Conversions](http://www.baeldung.com/java-primitive-conversions)
- [Java Money and the Currency API](http://www.baeldung.com/java-money-and-currency)
- [JVM Log Forging](http://www.baeldung.com/jvm-log-forging)
@@ -150,9 +149,11 @@
- [Throw Exception in Optional in Java 8](https://www.baeldung.com/java-optional-throw-exception)
- [Add a Character to a String at a Given Position](https://www.baeldung.com/java-add-character-to-string)
- [Synthetic Constructs in Java](https://www.baeldung.com/java-synthetic)
+- [Calculating the nth Root in Java](https://www.baeldung.com/java-nth-root)
- [Convert Double to String, Removing Decimal Places](https://www.baeldung.com/java-double-to-string)
- [Different Ways to Capture Java Heap Dumps](https://www.baeldung.com/java-heap-dump-capture)
- [How to Separate Double into Integer and Decimal Parts](https://www.baeldung.com/java-separate-double-into-integer-decimal-parts)
- [ZoneOffset in Java](https://www.baeldung.com/java-zone-offset)
- [Hashing a Password in Java](https://www.baeldung.com/java-password-hashing)
- [Java Switch Statement](https://www.baeldung.com/java-switch)
+- [The Modulo Operator in Java](https://www.baeldung.com/modulo-java)
diff --git a/java-collections-conversions/README.md b/java-collections-conversions/README.md
new file mode 100644
index 0000000000..761a78d7b0
--- /dev/null
+++ b/java-collections-conversions/README.md
@@ -0,0 +1,11 @@
+=========
+
+## Java Collections Cookbooks and Examples
+
+### Relevant Articles:
+- [Converting between an Array and a List in Java](http://www.baeldung.com/convert-array-to-list-and-list-to-array)
+- [Converting between an Array and a Set in Java](http://www.baeldung.com/convert-array-to-set-and-set-to-array)
+- [Converting between a List and a Set in Java](http://www.baeldung.com/convert-list-to-set-and-set-to-list)
+- [Convert a Map to an Array, List or Set in Java](http://www.baeldung.com/convert-map-values-to-array-list-set)
+- [Converting a List to String in Java](http://www.baeldung.com/java-list-to-string)
+- [How to Convert List to Map in Java](http://www.baeldung.com/java-list-to-map)
\ No newline at end of file
diff --git a/java-collections-conversions/pom.xml b/java-collections-conversions/pom.xml
new file mode 100644
index 0000000000..9b54652001
--- /dev/null
+++ b/java-collections-conversions/pom.xml
@@ -0,0 +1,40 @@
+
+ 4.0.0
+ java-collections-conversions
+ 0.1.0-SNAPSHOT
+ jar
+ java-collections-conversions
+
+
+ com.baeldung
+ parent-java
+ 0.0.1-SNAPSHOT
+ ../parent-java
+
+
+
+
+ org.apache.commons
+ commons-collections4
+ ${commons-collections4.version}
+
+
+ org.apache.commons
+ commons-lang3
+ ${commons-lang3.version}
+
+
+ org.assertj
+ assertj-core
+ ${assertj.version}
+ test
+
+
+
+
+ 3.5
+ 4.1
+ 3.6.1
+
+
diff --git a/core-java-collections/src/main/java/com/baeldung/convertcollectiontoarraylist/Foo.java b/java-collections-conversions/src/main/java/com/baeldung/convertcollectiontoarraylist/Foo.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/convertcollectiontoarraylist/Foo.java
rename to java-collections-conversions/src/main/java/com/baeldung/convertcollectiontoarraylist/Foo.java
diff --git a/core-java-collections/src/main/java/com/baeldung/convertlisttomap/Animal.java b/java-collections-conversions/src/main/java/com/baeldung/convertlisttomap/Animal.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/convertlisttomap/Animal.java
rename to java-collections-conversions/src/main/java/com/baeldung/convertlisttomap/Animal.java
diff --git a/core-java-collections/src/main/java/com/baeldung/convertlisttomap/ConvertListToMapService.java b/java-collections-conversions/src/main/java/com/baeldung/convertlisttomap/ConvertListToMapService.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/convertlisttomap/ConvertListToMapService.java
rename to java-collections-conversions/src/main/java/com/baeldung/convertlisttomap/ConvertListToMapService.java
diff --git a/core-java-persistence/src/main/resources/logback.xml b/java-collections-conversions/src/main/resources/logback.xml
similarity index 100%
rename from core-java-persistence/src/main/resources/logback.xml
rename to java-collections-conversions/src/main/resources/logback.xml
diff --git a/core-java-collections/src/test/java/com/baeldung/convertcollectiontoarraylist/FooUnitTest.java b/java-collections-conversions/src/test/java/com/baeldung/convertcollectiontoarraylist/FooUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/convertcollectiontoarraylist/FooUnitTest.java
rename to java-collections-conversions/src/test/java/com/baeldung/convertcollectiontoarraylist/FooUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/convertlisttomap/ConvertListToMapServiceUnitTest.java b/java-collections-conversions/src/test/java/com/baeldung/convertlisttomap/ConvertListToMapServiceUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/convertlisttomap/ConvertListToMapServiceUnitTest.java
rename to java-collections-conversions/src/test/java/com/baeldung/convertlisttomap/ConvertListToMapServiceUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/convertlisttomap/ConvertListWithDiplicatedIdToMapServiceUnitTest.java b/java-collections-conversions/src/test/java/com/baeldung/convertlisttomap/ConvertListWithDiplicatedIdToMapServiceUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/convertlisttomap/ConvertListWithDiplicatedIdToMapServiceUnitTest.java
rename to java-collections-conversions/src/test/java/com/baeldung/convertlisttomap/ConvertListWithDiplicatedIdToMapServiceUnitTest.java
diff --git a/core-java-collections/src/test/java/org/baeldung/java/collections/JavaCollectionConversionUnitTest.java b/java-collections-conversions/src/test/java/org/baeldung/java/collections/JavaCollectionConversionUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/org/baeldung/java/collections/JavaCollectionConversionUnitTest.java
rename to java-collections-conversions/src/test/java/org/baeldung/java/collections/JavaCollectionConversionUnitTest.java
diff --git a/core-java-collections/src/test/java/org/baeldung/java/lists/ListToSTring.java b/java-collections-conversions/src/test/java/org/baeldung/java/lists/ListToSTring.java
similarity index 100%
rename from core-java-collections/src/test/java/org/baeldung/java/lists/ListToSTring.java
rename to java-collections-conversions/src/test/java/org/baeldung/java/lists/ListToSTring.java
diff --git a/java-collections-maps/README.md b/java-collections-maps/README.md
new file mode 100644
index 0000000000..ca7fee1d21
--- /dev/null
+++ b/java-collections-maps/README.md
@@ -0,0 +1,18 @@
+=========
+
+## Java Collections Cookbooks and Examples
+
+### Relevant Articles:
+- [Guide to WeakHashMap in Java](http://www.baeldung.com/java-weakhashmap)
+- [Guide to the Guava BiMap](http://www.baeldung.com/guava-bimap)
+- [The Java HashMap Under the Hood](http://www.baeldung.com/java-hashmap)
+- [A Guide to LinkedHashMap in Java](http://www.baeldung.com/java-linked-hashmap)
+- [A Guide to TreeMap in Java](http://www.baeldung.com/java-treemap)
+- [Iterate over a Map in Java](http://www.baeldung.com/java-iterate-map)
+- [Java TreeMap vs HashMap](http://www.baeldung.com/java-treemap-vs-hashmap)
+- [How to Store Duplicate Keys in a Map in Java?](http://www.baeldung.com/java-map-duplicate-keys)
+- [Initialize a HashMap in Java](https://www.baeldung.com/java-initialize-hashmap)
+- [Get the Key for a Value from a Java Map](https://www.baeldung.com/java-map-key-from-value)
+- [Sort a HashMap in Java](https://www.baeldung.com/java-hashmap-sort)
+- [Finding the Highest Value in a Java Map](https://www.baeldung.com/java-find-map-max)
+- [Merging Two Maps with Java 8](https://www.baeldung.com/java-merge-maps)
diff --git a/java-collections-maps/pom.xml b/java-collections-maps/pom.xml
new file mode 100644
index 0000000000..0803866c51
--- /dev/null
+++ b/java-collections-maps/pom.xml
@@ -0,0 +1,54 @@
+
+ 4.0.0
+ java-collections-maps
+ 0.1.0-SNAPSHOT
+ jar
+ java-collections-maps
+
+
+ com.baeldung
+ parent-java
+ 0.0.1-SNAPSHOT
+ ../parent-java
+
+
+
+
+ org.apache.commons
+ commons-collections4
+ ${commons-collections4.version}
+
+
+ com.jayway.awaitility
+ awaitility
+ ${avaitility.version}
+ test
+
+
+ org.apache.commons
+ commons-lang3
+ ${commons-lang3.version}
+
+
+ org.assertj
+ assertj-core
+ ${assertj.version}
+ test
+
+
+ one.util
+ streamex
+ 0.6.5
+
+
+
+
+ 3.5
+ 4.1
+ 4.01
+ 1.7.0
+ 3.6.1
+ 7.1.0
+
+
diff --git a/core-java-collections/src/main/java/com/baeldung/java/map/MapUtil.java b/java-collections-maps/src/main/java/com/baeldung/java/map/MapUtil.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/java/map/MapUtil.java
rename to java-collections-maps/src/main/java/com/baeldung/java/map/MapUtil.java
diff --git a/core-java-collections/src/main/java/com/baeldung/java/map/MyKey.java b/java-collections-maps/src/main/java/com/baeldung/java/map/MyKey.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/java/map/MyKey.java
rename to java-collections-maps/src/main/java/com/baeldung/java/map/MyKey.java
diff --git a/core-java-collections/src/main/java/com/baeldung/java/map/MyLinkedHashMap.java b/java-collections-maps/src/main/java/com/baeldung/java/map/MyLinkedHashMap.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/java/map/MyLinkedHashMap.java
rename to java-collections-maps/src/main/java/com/baeldung/java/map/MyLinkedHashMap.java
diff --git a/core-java-collections/src/main/java/com/baeldung/java/map/initialize/MapInitializer.java b/java-collections-maps/src/main/java/com/baeldung/java/map/initialize/MapInitializer.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/java/map/initialize/MapInitializer.java
rename to java-collections-maps/src/main/java/com/baeldung/java/map/initialize/MapInitializer.java
diff --git a/core-java-collections/src/main/java/com/baeldung/map/iteration/MapIteration.java b/java-collections-maps/src/main/java/com/baeldung/map/iteration/MapIteration.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/map/iteration/MapIteration.java
rename to java-collections-maps/src/main/java/com/baeldung/map/iteration/MapIteration.java
diff --git a/core-java-collections/src/main/java/com/baeldung/map/java_8/MergeMaps.java b/java-collections-maps/src/main/java/com/baeldung/map/java_8/MergeMaps.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/map/java_8/MergeMaps.java
rename to java-collections-maps/src/main/java/com/baeldung/map/java_8/MergeMaps.java
diff --git a/core-java-collections/src/main/java/com/baeldung/map/util/MapMax.java b/java-collections-maps/src/main/java/com/baeldung/map/util/MapMax.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/map/util/MapMax.java
rename to java-collections-maps/src/main/java/com/baeldung/map/util/MapMax.java
diff --git a/core-java-collections/src/main/java/com/baeldung/sort/Employee.java b/java-collections-maps/src/main/java/com/baeldung/sort/Employee.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/sort/Employee.java
rename to java-collections-maps/src/main/java/com/baeldung/sort/Employee.java
diff --git a/core-java-collections/src/main/java/com/baeldung/sort/SortHashMap.java b/java-collections-maps/src/main/java/com/baeldung/sort/SortHashMap.java
similarity index 100%
rename from core-java-collections/src/main/java/com/baeldung/sort/SortHashMap.java
rename to java-collections-maps/src/main/java/com/baeldung/sort/SortHashMap.java
diff --git a/deltaspike/src/main/resources/logback.xml b/java-collections-maps/src/main/resources/logback.xml
similarity index 100%
rename from deltaspike/src/main/resources/logback.xml
rename to java-collections-maps/src/main/resources/logback.xml
diff --git a/core-java-collections/src/test/java/com/baeldung/collection/WhenComparingTreeMapVsHashMap.java b/java-collections-maps/src/test/java/com/baeldung/collection/WhenComparingTreeMapVsHashMap.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/collection/WhenComparingTreeMapVsHashMap.java
rename to java-collections-maps/src/test/java/com/baeldung/collection/WhenComparingTreeMapVsHashMap.java
diff --git a/core-java/src/test/java/com/baeldung/guava/GuavaBiMapUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/guava/GuavaBiMapUnitTest.java
similarity index 100%
rename from core-java/src/test/java/com/baeldung/guava/GuavaBiMapUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/guava/GuavaBiMapUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/java/map/KeyCheckUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/java/map/KeyCheckUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/java/map/KeyCheckUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/java/map/KeyCheckUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/java/map/MapMultipleValuesUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/java/map/MapMultipleValuesUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/java/map/MapMultipleValuesUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/java/map/MapMultipleValuesUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/java/map/MapUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/java/map/MapUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/java/map/MapUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/java/map/MapUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/java/map/MapUtilUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/java/map/MapUtilUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/java/map/MapUtilUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/java/map/MapUtilUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/java/map/initialize/MapInitializerUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/java/map/initialize/MapInitializerUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/java/map/initialize/MapInitializerUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/java/map/initialize/MapInitializerUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/map/util/MapMaxUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/map/util/MapMaxUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/map/util/MapMaxUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/map/util/MapMaxUnitTest.java
diff --git a/core-java-collections/src/test/java/com/baeldung/weakhashmap/WeakHashMapUnitTest.java b/java-collections-maps/src/test/java/com/baeldung/weakhashmap/WeakHashMapUnitTest.java
similarity index 100%
rename from core-java-collections/src/test/java/com/baeldung/weakhashmap/WeakHashMapUnitTest.java
rename to java-collections-maps/src/test/java/com/baeldung/weakhashmap/WeakHashMapUnitTest.java
diff --git a/parent-spring-4/pom.xml b/parent-spring-4/pom.xml
index d1b1298013..9b3c42599b 100644
--- a/parent-spring-4/pom.xml
+++ b/parent-spring-4/pom.xml
@@ -29,7 +29,7 @@
- 4.3.17.RELEASE
+ 4.3.20.RELEASE
5.0.2
diff --git a/core-java-persistence/README.md b/persistence-modules/core-java-persistence/README.md
similarity index 100%
rename from core-java-persistence/README.md
rename to persistence-modules/core-java-persistence/README.md
diff --git a/core-java-persistence/pom.xml b/persistence-modules/core-java-persistence/pom.xml
similarity index 95%
rename from core-java-persistence/pom.xml
rename to persistence-modules/core-java-persistence/pom.xml
index 7279fd763b..f012d60ee6 100644
--- a/core-java-persistence/pom.xml
+++ b/persistence-modules/core-java-persistence/pom.xml
@@ -1,71 +1,71 @@
-
- 4.0.0
- com.baeldung.core-java-persistence
- core-java-persistence
- 0.1.0-SNAPSHOT
- jar
- core-java-persistence
-
- com.baeldung
- parent-java
- 0.0.1-SNAPSHOT
- ../parent-java
-
-
-
- org.assertj
- assertj-core
- ${assertj-core.version}
- test
-
-
- com.h2database
- h2
- ${h2database.version}
-
-
- org.apache.commons
- commons-dbcp2
- ${commons-dbcp2.version}
-
-
- com.zaxxer
- HikariCP
- ${HikariCP.version}
-
-
- com.mchange
- c3p0
- ${c3p0.version}
-
-
- org.springframework
- spring-web
- ${springframework.spring-web.version}
-
-
- org.springframework.boot
- spring-boot-starter
- ${springframework.boot.spring-boot-starter.version}
-
-
-
- core-java-persistence
-
-
- src/main/resources
- true
-
-
-
-
- 3.10.0
- 1.4.197
- 2.4.0
- 3.2.0
- 0.9.5.2
- 1.5.8.RELEASE
- 4.3.4.RELEASE
-
+
+ 4.0.0
+ com.baeldung.core-java-persistence
+ core-java-persistence
+ 0.1.0-SNAPSHOT
+ jar
+ core-java-persistence
+
+ com.baeldung
+ parent-java
+ 0.0.1-SNAPSHOT
+ ../../parent-java
+
+
+
+ org.assertj
+ assertj-core
+ ${assertj-core.version}
+ test
+
+
+ com.h2database
+ h2
+ ${h2database.version}
+
+
+ org.apache.commons
+ commons-dbcp2
+ ${commons-dbcp2.version}
+
+
+ com.zaxxer
+ HikariCP
+ ${HikariCP.version}
+
+
+ com.mchange
+ c3p0
+ ${c3p0.version}
+
+
+ org.springframework
+ spring-web
+ ${springframework.spring-web.version}
+
+
+ org.springframework.boot
+ spring-boot-starter
+ ${springframework.boot.spring-boot-starter.version}
+
+
+
+ core-java-persistence
+
+
+ src/main/resources
+ true
+
+
+
+
+ 3.10.0
+ 1.4.197
+ 2.4.0
+ 3.2.0
+ 0.9.5.2
+ 1.5.8.RELEASE
+ 4.3.4.RELEASE
+
\ No newline at end of file
diff --git a/core-java-persistence/src/main/java/com/baeldung/connectionpool/BasicConnectionPool.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/BasicConnectionPool.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/connectionpool/BasicConnectionPool.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/BasicConnectionPool.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/connectionpool/C3poDataSource.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/C3poDataSource.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/connectionpool/C3poDataSource.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/C3poDataSource.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/connectionpool/ConnectionPool.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/ConnectionPool.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/connectionpool/ConnectionPool.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/ConnectionPool.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/connectionpool/DBCPDataSource.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/DBCPDataSource.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/connectionpool/DBCPDataSource.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/DBCPDataSource.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/connectionpool/HikariCPDataSource.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/HikariCPDataSource.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/connectionpool/HikariCPDataSource.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/connectionpool/HikariCPDataSource.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/jdbc/BatchProcessing.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbc/BatchProcessing.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/jdbc/BatchProcessing.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbc/BatchProcessing.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/jdbc/Employee.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbc/Employee.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/jdbc/Employee.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbc/Employee.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/DatabaseConfiguration.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/DatabaseConfiguration.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/jdbcrowset/DatabaseConfiguration.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/DatabaseConfiguration.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/ExampleListener.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/ExampleListener.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/jdbcrowset/ExampleListener.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/ExampleListener.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/FilterExample.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/FilterExample.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/jdbcrowset/FilterExample.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/FilterExample.java
diff --git a/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/JdbcRowsetApplication.java b/persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/JdbcRowsetApplication.java
similarity index 100%
rename from core-java-persistence/src/main/java/com/baeldung/jdbcrowset/JdbcRowsetApplication.java
rename to persistence-modules/core-java-persistence/src/main/java/com/baeldung/jdbcrowset/JdbcRowsetApplication.java
diff --git a/influxdb/src/main/resources/logback.xml b/persistence-modules/core-java-persistence/src/main/resources/logback.xml
similarity index 100%
rename from influxdb/src/main/resources/logback.xml
rename to persistence-modules/core-java-persistence/src/main/resources/logback.xml
diff --git a/core-java-persistence/src/test/java/com/baeldung/connectionpool/BasicConnectionPoolUnitTest.java b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/BasicConnectionPoolUnitTest.java
similarity index 97%
rename from core-java-persistence/src/test/java/com/baeldung/connectionpool/BasicConnectionPoolUnitTest.java
rename to persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/BasicConnectionPoolUnitTest.java
index 479cd0db25..3b3c9870fb 100644
--- a/core-java-persistence/src/test/java/com/baeldung/connectionpool/BasicConnectionPoolUnitTest.java
+++ b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/BasicConnectionPoolUnitTest.java
@@ -1,67 +1,67 @@
-package com.baeldung.connectionpool;
-
-import java.sql.Connection;
-import java.sql.SQLException;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-public class BasicConnectionPoolUnitTest {
-
- private static ConnectionPool connectionPool;
-
- @BeforeClass
- public static void setUpBasicConnectionPoolInstance() throws SQLException {
- connectionPool = BasicConnectionPool.create("jdbc:h2:mem:test", "user", "password");
- }
-
- @Test
- public void givenBasicConnectionPoolInstance_whenCalledgetConnection_thenCorrect() throws Exception {
- assertTrue(connectionPool.getConnection().isValid(1));
- }
-
- @Test
- public void givenBasicConnectionPoolInstance_whenCalledreleaseConnection_thenCorrect() throws Exception {
- Connection connection = connectionPool.getConnection();
- assertThat(connectionPool.releaseConnection(connection)).isTrue();
- }
-
- @Test
- public void givenBasicConnectionPoolInstance_whenCalledgetUrl_thenCorrect() {
- assertThat(connectionPool.getUrl()).isEqualTo("jdbc:h2:mem:test");
- }
-
- @Test
- public void givenBasicConnectionPoolInstance_whenCalledgetUser_thenCorrect() {
- assertThat(connectionPool.getUser()).isEqualTo("user");
- }
-
- @Test
- public void givenBasicConnectionPoolInstance_whenCalledgetPassword_thenCorrect() {
- assertThat(connectionPool.getPassword()).isEqualTo("password");
- }
-
- @Test(expected = RuntimeException.class)
- public void givenBasicConnectionPoolInstance_whenAskedForMoreThanMax_thenError() throws Exception {
- // this test needs to be independent so it doesn't share the same connection pool as other tests
- ConnectionPool cp = BasicConnectionPool.create("jdbc:h2:mem:test", "user", "password");
- final int MAX_POOL_SIZE = 20;
- for (int i = 0; i < MAX_POOL_SIZE + 1; i++) {
- cp.getConnection();
- }
- fail();
- }
-
- @Test
- public void givenBasicConnectionPoolInstance_whenSutdown_thenEmpty() throws Exception {
- ConnectionPool cp = BasicConnectionPool.create("jdbc:h2:mem:test", "user", "password");
- assertThat(((BasicConnectionPool)cp).getSize()).isEqualTo(10);
-
- ((BasicConnectionPool) cp).shutdown();
- assertThat(((BasicConnectionPool)cp).getSize()).isEqualTo(0);
- }
-}
+package com.baeldung.connectionpool;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class BasicConnectionPoolUnitTest {
+
+ private static ConnectionPool connectionPool;
+
+ @BeforeClass
+ public static void setUpBasicConnectionPoolInstance() throws SQLException {
+ connectionPool = BasicConnectionPool.create("jdbc:h2:mem:test", "user", "password");
+ }
+
+ @Test
+ public void givenBasicConnectionPoolInstance_whenCalledgetConnection_thenCorrect() throws Exception {
+ assertTrue(connectionPool.getConnection().isValid(1));
+ }
+
+ @Test
+ public void givenBasicConnectionPoolInstance_whenCalledreleaseConnection_thenCorrect() throws Exception {
+ Connection connection = connectionPool.getConnection();
+ assertThat(connectionPool.releaseConnection(connection)).isTrue();
+ }
+
+ @Test
+ public void givenBasicConnectionPoolInstance_whenCalledgetUrl_thenCorrect() {
+ assertThat(connectionPool.getUrl()).isEqualTo("jdbc:h2:mem:test");
+ }
+
+ @Test
+ public void givenBasicConnectionPoolInstance_whenCalledgetUser_thenCorrect() {
+ assertThat(connectionPool.getUser()).isEqualTo("user");
+ }
+
+ @Test
+ public void givenBasicConnectionPoolInstance_whenCalledgetPassword_thenCorrect() {
+ assertThat(connectionPool.getPassword()).isEqualTo("password");
+ }
+
+ @Test(expected = RuntimeException.class)
+ public void givenBasicConnectionPoolInstance_whenAskedForMoreThanMax_thenError() throws Exception {
+ // this test needs to be independent so it doesn't share the same connection pool as other tests
+ ConnectionPool cp = BasicConnectionPool.create("jdbc:h2:mem:test", "user", "password");
+ final int MAX_POOL_SIZE = 20;
+ for (int i = 0; i < MAX_POOL_SIZE + 1; i++) {
+ cp.getConnection();
+ }
+ fail();
+ }
+
+ @Test
+ public void givenBasicConnectionPoolInstance_whenSutdown_thenEmpty() throws Exception {
+ ConnectionPool cp = BasicConnectionPool.create("jdbc:h2:mem:test", "user", "password");
+ assertThat(((BasicConnectionPool)cp).getSize()).isEqualTo(10);
+
+ ((BasicConnectionPool) cp).shutdown();
+ assertThat(((BasicConnectionPool)cp).getSize()).isEqualTo(0);
+ }
+}
diff --git a/core-java-persistence/src/test/java/com/baeldung/connectionpool/C3poDataSourceUnitTest.java b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/C3poDataSourceUnitTest.java
similarity index 96%
rename from core-java-persistence/src/test/java/com/baeldung/connectionpool/C3poDataSourceUnitTest.java
rename to persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/C3poDataSourceUnitTest.java
index a07fa9e74b..acad9fe5e4 100644
--- a/core-java-persistence/src/test/java/com/baeldung/connectionpool/C3poDataSourceUnitTest.java
+++ b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/C3poDataSourceUnitTest.java
@@ -1,13 +1,13 @@
-package com.baeldung.connectionpool;
-
-import java.sql.SQLException;
-import static org.junit.Assert.assertTrue;
-import org.junit.Test;
-
-public class C3poDataSourceUnitTest {
-
- @Test
- public void givenC3poDataSourceClass_whenCalledgetConnection_thenCorrect() throws SQLException {
- assertTrue(C3poDataSource.getConnection().isValid(1));
- }
+package com.baeldung.connectionpool;
+
+import java.sql.SQLException;
+import static org.junit.Assert.assertTrue;
+import org.junit.Test;
+
+public class C3poDataSourceUnitTest {
+
+ @Test
+ public void givenC3poDataSourceClass_whenCalledgetConnection_thenCorrect() throws SQLException {
+ assertTrue(C3poDataSource.getConnection().isValid(1));
+ }
}
\ No newline at end of file
diff --git a/core-java-persistence/src/test/java/com/baeldung/connectionpool/DBCPDataSourceUnitTest.java b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/DBCPDataSourceUnitTest.java
similarity index 96%
rename from core-java-persistence/src/test/java/com/baeldung/connectionpool/DBCPDataSourceUnitTest.java
rename to persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/DBCPDataSourceUnitTest.java
index 43aaf330b6..4882d2af73 100644
--- a/core-java-persistence/src/test/java/com/baeldung/connectionpool/DBCPDataSourceUnitTest.java
+++ b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/DBCPDataSourceUnitTest.java
@@ -1,13 +1,13 @@
-package com.baeldung.connectionpool;
-
-import java.sql.SQLException;
-import static org.junit.Assert.assertTrue;
-import org.junit.Test;
-
-public class DBCPDataSourceUnitTest {
-
- @Test
- public void givenDBCPDataSourceClass_whenCalledgetConnection_thenCorrect() throws SQLException {
- assertTrue(DBCPDataSource.getConnection().isValid(1));
- }
+package com.baeldung.connectionpool;
+
+import java.sql.SQLException;
+import static org.junit.Assert.assertTrue;
+import org.junit.Test;
+
+public class DBCPDataSourceUnitTest {
+
+ @Test
+ public void givenDBCPDataSourceClass_whenCalledgetConnection_thenCorrect() throws SQLException {
+ assertTrue(DBCPDataSource.getConnection().isValid(1));
+ }
}
\ No newline at end of file
diff --git a/core-java-persistence/src/test/java/com/baeldung/connectionpool/HikariCPDataSourceUnitTest.java b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/HikariCPDataSourceUnitTest.java
similarity index 96%
rename from core-java-persistence/src/test/java/com/baeldung/connectionpool/HikariCPDataSourceUnitTest.java
rename to persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/HikariCPDataSourceUnitTest.java
index b20ce70efd..885743ab2b 100644
--- a/core-java-persistence/src/test/java/com/baeldung/connectionpool/HikariCPDataSourceUnitTest.java
+++ b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/connectionpool/HikariCPDataSourceUnitTest.java
@@ -1,13 +1,13 @@
-package com.baeldung.connectionpool;
-
-import java.sql.SQLException;
-import static org.junit.Assert.assertTrue;
-import org.junit.Test;
-
-public class HikariCPDataSourceUnitTest {
-
- @Test
- public void givenHikariDataSourceClass_whenCalledgetConnection_thenCorrect() throws SQLException {
- assertTrue(HikariCPDataSource.getConnection().isValid(1));
- }
+package com.baeldung.connectionpool;
+
+import java.sql.SQLException;
+import static org.junit.Assert.assertTrue;
+import org.junit.Test;
+
+public class HikariCPDataSourceUnitTest {
+
+ @Test
+ public void givenHikariDataSourceClass_whenCalledgetConnection_thenCorrect() throws SQLException {
+ assertTrue(HikariCPDataSource.getConnection().isValid(1));
+ }
}
\ No newline at end of file
diff --git a/core-java-persistence/src/test/java/com/baeldung/jdbc/BatchProcessingLiveTest.java b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/jdbc/BatchProcessingLiveTest.java
similarity index 100%
rename from core-java-persistence/src/test/java/com/baeldung/jdbc/BatchProcessingLiveTest.java
rename to persistence-modules/core-java-persistence/src/test/java/com/baeldung/jdbc/BatchProcessingLiveTest.java
diff --git a/core-java-persistence/src/test/java/com/baeldung/jdbc/JdbcLiveTest.java b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/jdbc/JdbcLiveTest.java
similarity index 100%
rename from core-java-persistence/src/test/java/com/baeldung/jdbc/JdbcLiveTest.java
rename to persistence-modules/core-java-persistence/src/test/java/com/baeldung/jdbc/JdbcLiveTest.java
diff --git a/core-java-persistence/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetLiveTest.java b/persistence-modules/core-java-persistence/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetLiveTest.java
similarity index 100%
rename from core-java-persistence/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetLiveTest.java
rename to persistence-modules/core-java-persistence/src/test/java/com/baeldung/jdbcrowset/JdbcRowSetLiveTest.java
diff --git a/deltaspike/.gitignore b/persistence-modules/deltaspike/.gitignore
similarity index 100%
rename from deltaspike/.gitignore
rename to persistence-modules/deltaspike/.gitignore
diff --git a/deltaspike/README.md b/persistence-modules/deltaspike/README.md
similarity index 100%
rename from deltaspike/README.md
rename to persistence-modules/deltaspike/README.md
diff --git a/deltaspike/pom.xml b/persistence-modules/deltaspike/pom.xml
similarity index 99%
rename from deltaspike/pom.xml
rename to persistence-modules/deltaspike/pom.xml
index 8ab3e3fd80..b798d2f39e 100644
--- a/deltaspike/pom.xml
+++ b/persistence-modules/deltaspike/pom.xml
@@ -14,6 +14,7 @@
com.baeldung
parent-modules
1.0.0-SNAPSHOT
+ ../../
diff --git a/deltaspike/src/main/java/baeldung/controller/MemberController.java b/persistence-modules/deltaspike/src/main/java/baeldung/controller/MemberController.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/controller/MemberController.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/controller/MemberController.java
diff --git a/deltaspike/src/main/java/baeldung/data/EntityManagerProducer.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/EntityManagerProducer.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/EntityManagerProducer.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/EntityManagerProducer.java
diff --git a/deltaspike/src/main/java/baeldung/data/MemberListProducer.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/MemberListProducer.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/MemberListProducer.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/MemberListProducer.java
diff --git a/deltaspike/src/main/java/baeldung/data/MemberRepository.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/MemberRepository.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/MemberRepository.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/MemberRepository.java
diff --git a/deltaspike/src/main/java/baeldung/data/QueryDslRepositoryExtension.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/QueryDslRepositoryExtension.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/QueryDslRepositoryExtension.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/QueryDslRepositoryExtension.java
diff --git a/deltaspike/src/main/java/baeldung/data/QueryDslSupport.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/QueryDslSupport.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/QueryDslSupport.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/QueryDslSupport.java
diff --git a/deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerProducer.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerProducer.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerProducer.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerProducer.java
diff --git a/deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerResolver.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerResolver.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerResolver.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/SecondaryEntityManagerResolver.java
diff --git a/deltaspike/src/main/java/baeldung/data/SecondaryPersistenceUnit.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/SecondaryPersistenceUnit.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/SecondaryPersistenceUnit.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/SecondaryPersistenceUnit.java
diff --git a/deltaspike/src/main/java/baeldung/data/SimpleUserRepository.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/SimpleUserRepository.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/SimpleUserRepository.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/SimpleUserRepository.java
diff --git a/deltaspike/src/main/java/baeldung/data/UserRepository.java b/persistence-modules/deltaspike/src/main/java/baeldung/data/UserRepository.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/data/UserRepository.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/data/UserRepository.java
diff --git a/deltaspike/src/main/java/baeldung/model/Address.java b/persistence-modules/deltaspike/src/main/java/baeldung/model/Address.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/model/Address.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/model/Address.java
diff --git a/deltaspike/src/main/java/baeldung/model/Member.java b/persistence-modules/deltaspike/src/main/java/baeldung/model/Member.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/model/Member.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/model/Member.java
diff --git a/deltaspike/src/main/java/baeldung/model/User.java b/persistence-modules/deltaspike/src/main/java/baeldung/model/User.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/model/User.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/model/User.java
diff --git a/deltaspike/src/main/java/baeldung/rest/JaxRsActivator.java b/persistence-modules/deltaspike/src/main/java/baeldung/rest/JaxRsActivator.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/rest/JaxRsActivator.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/rest/JaxRsActivator.java
diff --git a/deltaspike/src/main/java/baeldung/rest/MemberResourceRESTService.java b/persistence-modules/deltaspike/src/main/java/baeldung/rest/MemberResourceRESTService.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/rest/MemberResourceRESTService.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/rest/MemberResourceRESTService.java
diff --git a/deltaspike/src/main/java/baeldung/service/MemberRegistration.java b/persistence-modules/deltaspike/src/main/java/baeldung/service/MemberRegistration.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/service/MemberRegistration.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/service/MemberRegistration.java
diff --git a/deltaspike/src/main/java/baeldung/util/Resources.java b/persistence-modules/deltaspike/src/main/java/baeldung/util/Resources.java
similarity index 100%
rename from deltaspike/src/main/java/baeldung/util/Resources.java
rename to persistence-modules/deltaspike/src/main/java/baeldung/util/Resources.java
diff --git a/deltaspike/src/main/resources/META-INF/apache-deltaspike.properties b/persistence-modules/deltaspike/src/main/resources/META-INF/apache-deltaspike.properties
similarity index 100%
rename from deltaspike/src/main/resources/META-INF/apache-deltaspike.properties
rename to persistence-modules/deltaspike/src/main/resources/META-INF/apache-deltaspike.properties
diff --git a/deltaspike/src/main/resources/META-INF/beans.xml b/persistence-modules/deltaspike/src/main/resources/META-INF/beans.xml
similarity index 100%
rename from deltaspike/src/main/resources/META-INF/beans.xml
rename to persistence-modules/deltaspike/src/main/resources/META-INF/beans.xml
diff --git a/deltaspike/src/main/resources/META-INF/persistence.xml b/persistence-modules/deltaspike/src/main/resources/META-INF/persistence.xml
similarity index 100%
rename from deltaspike/src/main/resources/META-INF/persistence.xml
rename to persistence-modules/deltaspike/src/main/resources/META-INF/persistence.xml
diff --git a/deltaspike/src/main/resources/import.sql b/persistence-modules/deltaspike/src/main/resources/import.sql
similarity index 100%
rename from deltaspike/src/main/resources/import.sql
rename to persistence-modules/deltaspike/src/main/resources/import.sql
diff --git a/influxdb/src/test/resources/logback.xml b/persistence-modules/deltaspike/src/main/resources/logback.xml
similarity index 100%
rename from influxdb/src/test/resources/logback.xml
rename to persistence-modules/deltaspike/src/main/resources/logback.xml
diff --git a/deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-ds.xml b/persistence-modules/deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-ds.xml
similarity index 100%
rename from deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-ds.xml
rename to persistence-modules/deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-ds.xml
diff --git a/deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-secondary-ds.xml b/persistence-modules/deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-secondary-ds.xml
similarity index 100%
rename from deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-secondary-ds.xml
rename to persistence-modules/deltaspike/src/main/webapp/WEB-INF/baeldung-jee7-seed-secondary-ds.xml
diff --git a/deltaspike/src/main/webapp/WEB-INF/beans.xml b/persistence-modules/deltaspike/src/main/webapp/WEB-INF/beans.xml
similarity index 100%
rename from deltaspike/src/main/webapp/WEB-INF/beans.xml
rename to persistence-modules/deltaspike/src/main/webapp/WEB-INF/beans.xml
diff --git a/deltaspike/src/main/webapp/WEB-INF/faces-config.xml b/persistence-modules/deltaspike/src/main/webapp/WEB-INF/faces-config.xml
similarity index 100%
rename from deltaspike/src/main/webapp/WEB-INF/faces-config.xml
rename to persistence-modules/deltaspike/src/main/webapp/WEB-INF/faces-config.xml
diff --git a/deltaspike/src/main/webapp/WEB-INF/templates/default.xhtml b/persistence-modules/deltaspike/src/main/webapp/WEB-INF/templates/default.xhtml
similarity index 100%
rename from deltaspike/src/main/webapp/WEB-INF/templates/default.xhtml
rename to persistence-modules/deltaspike/src/main/webapp/WEB-INF/templates/default.xhtml
diff --git a/deltaspike/src/main/webapp/index.html b/persistence-modules/deltaspike/src/main/webapp/index.html
similarity index 100%
rename from deltaspike/src/main/webapp/index.html
rename to persistence-modules/deltaspike/src/main/webapp/index.html
diff --git a/deltaspike/src/main/webapp/index.xhtml b/persistence-modules/deltaspike/src/main/webapp/index.xhtml
similarity index 100%
rename from deltaspike/src/main/webapp/index.xhtml
rename to persistence-modules/deltaspike/src/main/webapp/index.xhtml
diff --git a/deltaspike/src/main/webapp/resources/css/screen.css b/persistence-modules/deltaspike/src/main/webapp/resources/css/screen.css
similarity index 100%
rename from deltaspike/src/main/webapp/resources/css/screen.css
rename to persistence-modules/deltaspike/src/main/webapp/resources/css/screen.css
diff --git a/deltaspike/src/main/webapp/resources/gfx/asidebkg.png b/persistence-modules/deltaspike/src/main/webapp/resources/gfx/asidebkg.png
similarity index 100%
rename from deltaspike/src/main/webapp/resources/gfx/asidebkg.png
rename to persistence-modules/deltaspike/src/main/webapp/resources/gfx/asidebkg.png
diff --git a/deltaspike/src/main/webapp/resources/gfx/bkg-blkheader.png b/persistence-modules/deltaspike/src/main/webapp/resources/gfx/bkg-blkheader.png
similarity index 100%
rename from deltaspike/src/main/webapp/resources/gfx/bkg-blkheader.png
rename to persistence-modules/deltaspike/src/main/webapp/resources/gfx/bkg-blkheader.png
diff --git a/deltaspike/src/main/webapp/resources/gfx/dualbrand_logo.png b/persistence-modules/deltaspike/src/main/webapp/resources/gfx/dualbrand_logo.png
similarity index 100%
rename from deltaspike/src/main/webapp/resources/gfx/dualbrand_logo.png
rename to persistence-modules/deltaspike/src/main/webapp/resources/gfx/dualbrand_logo.png
diff --git a/deltaspike/src/main/webapp/resources/gfx/headerbkg.png b/persistence-modules/deltaspike/src/main/webapp/resources/gfx/headerbkg.png
similarity index 100%
rename from deltaspike/src/main/webapp/resources/gfx/headerbkg.png
rename to persistence-modules/deltaspike/src/main/webapp/resources/gfx/headerbkg.png
diff --git a/deltaspike/src/main/webapp/resources/gfx/wildfly_400x130.jpg b/persistence-modules/deltaspike/src/main/webapp/resources/gfx/wildfly_400x130.jpg
similarity index 100%
rename from deltaspike/src/main/webapp/resources/gfx/wildfly_400x130.jpg
rename to persistence-modules/deltaspike/src/main/webapp/resources/gfx/wildfly_400x130.jpg
diff --git a/deltaspike/src/test/java/baeldung/ValidatorProducer.java b/persistence-modules/deltaspike/src/test/java/baeldung/ValidatorProducer.java
similarity index 100%
rename from deltaspike/src/test/java/baeldung/ValidatorProducer.java
rename to persistence-modules/deltaspike/src/test/java/baeldung/ValidatorProducer.java
diff --git a/deltaspike/src/test/java/baeldung/data/TestEntityManagerProducer.java b/persistence-modules/deltaspike/src/test/java/baeldung/data/TestEntityManagerProducer.java
similarity index 100%
rename from deltaspike/src/test/java/baeldung/data/TestEntityManagerProducer.java
rename to persistence-modules/deltaspike/src/test/java/baeldung/data/TestEntityManagerProducer.java
diff --git a/deltaspike/src/test/java/baeldung/test/MemberRegistrationLiveTest.java b/persistence-modules/deltaspike/src/test/java/baeldung/test/MemberRegistrationLiveTest.java
similarity index 100%
rename from deltaspike/src/test/java/baeldung/test/MemberRegistrationLiveTest.java
rename to persistence-modules/deltaspike/src/test/java/baeldung/test/MemberRegistrationLiveTest.java
diff --git a/deltaspike/src/test/java/baeldung/test/SimpleUserRepositoryUnitTest.java b/persistence-modules/deltaspike/src/test/java/baeldung/test/SimpleUserRepositoryUnitTest.java
similarity index 100%
rename from deltaspike/src/test/java/baeldung/test/SimpleUserRepositoryUnitTest.java
rename to persistence-modules/deltaspike/src/test/java/baeldung/test/SimpleUserRepositoryUnitTest.java
diff --git a/deltaspike/src/test/java/baeldung/test/UserRepositoryUnitTest.java b/persistence-modules/deltaspike/src/test/java/baeldung/test/UserRepositoryUnitTest.java
similarity index 100%
rename from deltaspike/src/test/java/baeldung/test/UserRepositoryUnitTest.java
rename to persistence-modules/deltaspike/src/test/java/baeldung/test/UserRepositoryUnitTest.java
diff --git a/deltaspike/src/test/resources/META-INF/apache-deltaspike.properties b/persistence-modules/deltaspike/src/test/resources/META-INF/apache-deltaspike.properties
similarity index 100%
rename from deltaspike/src/test/resources/META-INF/apache-deltaspike.properties
rename to persistence-modules/deltaspike/src/test/resources/META-INF/apache-deltaspike.properties
diff --git a/deltaspike/src/test/resources/META-INF/beans.xml b/persistence-modules/deltaspike/src/test/resources/META-INF/beans.xml
similarity index 100%
rename from deltaspike/src/test/resources/META-INF/beans.xml
rename to persistence-modules/deltaspike/src/test/resources/META-INF/beans.xml
diff --git a/deltaspike/src/test/resources/META-INF/persistence.xml b/persistence-modules/deltaspike/src/test/resources/META-INF/persistence.xml
similarity index 100%
rename from deltaspike/src/test/resources/META-INF/persistence.xml
rename to persistence-modules/deltaspike/src/test/resources/META-INF/persistence.xml
diff --git a/deltaspike/src/test/resources/arquillian.xml b/persistence-modules/deltaspike/src/test/resources/arquillian.xml
similarity index 100%
rename from deltaspike/src/test/resources/arquillian.xml
rename to persistence-modules/deltaspike/src/test/resources/arquillian.xml
diff --git a/deltaspike/src/test/resources/import.sql b/persistence-modules/deltaspike/src/test/resources/import.sql
similarity index 100%
rename from deltaspike/src/test/resources/import.sql
rename to persistence-modules/deltaspike/src/test/resources/import.sql
diff --git a/deltaspike/src/test/resources/test-ds.xml b/persistence-modules/deltaspike/src/test/resources/test-ds.xml
similarity index 100%
rename from deltaspike/src/test/resources/test-ds.xml
rename to persistence-modules/deltaspike/src/test/resources/test-ds.xml
diff --git a/deltaspike/src/test/resources/test-secondary-ds.xml b/persistence-modules/deltaspike/src/test/resources/test-secondary-ds.xml
similarity index 100%
rename from deltaspike/src/test/resources/test-secondary-ds.xml
rename to persistence-modules/deltaspike/src/test/resources/test-secondary-ds.xml
diff --git a/influxdb/README.md b/persistence-modules/influxdb/README.md
similarity index 100%
rename from influxdb/README.md
rename to persistence-modules/influxdb/README.md
diff --git a/influxdb/pom.xml b/persistence-modules/influxdb/pom.xml
similarity index 96%
rename from influxdb/pom.xml
rename to persistence-modules/influxdb/pom.xml
index 5bb94bb6e2..5043d61897 100644
--- a/influxdb/pom.xml
+++ b/persistence-modules/influxdb/pom.xml
@@ -12,6 +12,7 @@
com.baeldung
parent-modules
1.0.0-SNAPSHOT
+ ../../
diff --git a/influxdb/src/main/java/com/baeldung/influxdb/MemoryPoint.java b/persistence-modules/influxdb/src/main/java/com/baeldung/influxdb/MemoryPoint.java
similarity index 100%
rename from influxdb/src/main/java/com/baeldung/influxdb/MemoryPoint.java
rename to persistence-modules/influxdb/src/main/java/com/baeldung/influxdb/MemoryPoint.java
diff --git a/orientdb/src/main/resources/logback.xml b/persistence-modules/influxdb/src/main/resources/logback.xml
similarity index 100%
rename from orientdb/src/main/resources/logback.xml
rename to persistence-modules/influxdb/src/main/resources/logback.xml
diff --git a/influxdb/src/test/java/com/baeldung/influxdb/InfluxDBConnectionLiveTest.java b/persistence-modules/influxdb/src/test/java/com/baeldung/influxdb/InfluxDBConnectionLiveTest.java
similarity index 100%
rename from influxdb/src/test/java/com/baeldung/influxdb/InfluxDBConnectionLiveTest.java
rename to persistence-modules/influxdb/src/test/java/com/baeldung/influxdb/InfluxDBConnectionLiveTest.java
diff --git a/spring-boot-persistence/src/main/resources/logback.xml b/persistence-modules/influxdb/src/test/resources/logback.xml
similarity index 100%
rename from spring-boot-persistence/src/main/resources/logback.xml
rename to persistence-modules/influxdb/src/test/resources/logback.xml
diff --git a/orientdb/.gitignore b/persistence-modules/orientdb/.gitignore
similarity index 100%
rename from orientdb/.gitignore
rename to persistence-modules/orientdb/.gitignore
diff --git a/orientdb/.mvn/wrapper/maven-wrapper.jar b/persistence-modules/orientdb/.mvn/wrapper/maven-wrapper.jar
similarity index 100%
rename from orientdb/.mvn/wrapper/maven-wrapper.jar
rename to persistence-modules/orientdb/.mvn/wrapper/maven-wrapper.jar
diff --git a/orientdb/.mvn/wrapper/maven-wrapper.properties b/persistence-modules/orientdb/.mvn/wrapper/maven-wrapper.properties
similarity index 100%
rename from orientdb/.mvn/wrapper/maven-wrapper.properties
rename to persistence-modules/orientdb/.mvn/wrapper/maven-wrapper.properties
diff --git a/orientdb/README.md b/persistence-modules/orientdb/README.md
similarity index 100%
rename from orientdb/README.md
rename to persistence-modules/orientdb/README.md
diff --git a/orientdb/mvnw b/persistence-modules/orientdb/mvnw
old mode 100755
new mode 100644
similarity index 100%
rename from orientdb/mvnw
rename to persistence-modules/orientdb/mvnw
diff --git a/orientdb/mvnw.cmd b/persistence-modules/orientdb/mvnw.cmd
similarity index 100%
rename from orientdb/mvnw.cmd
rename to persistence-modules/orientdb/mvnw.cmd
diff --git a/orientdb/pom.xml b/persistence-modules/orientdb/pom.xml
similarity index 97%
rename from orientdb/pom.xml
rename to persistence-modules/orientdb/pom.xml
index e1c7ac42bb..e4bc9a0585 100644
--- a/orientdb/pom.xml
+++ b/persistence-modules/orientdb/pom.xml
@@ -12,6 +12,7 @@
com.baeldung
parent-modules
1.0.0-SNAPSHOT
+ ../../
diff --git a/orientdb/src/main/java/com/baeldung/orientdb/Author.java b/persistence-modules/orientdb/src/main/java/com/baeldung/orientdb/Author.java
similarity index 100%
rename from orientdb/src/main/java/com/baeldung/orientdb/Author.java
rename to persistence-modules/orientdb/src/main/java/com/baeldung/orientdb/Author.java
diff --git a/spring-data-jpa/src/main/resources/logback.xml b/persistence-modules/orientdb/src/main/resources/logback.xml
similarity index 100%
rename from spring-data-jpa/src/main/resources/logback.xml
rename to persistence-modules/orientdb/src/main/resources/logback.xml
diff --git a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPILiveTest.java b/persistence-modules/orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPILiveTest.java
similarity index 100%
rename from orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPILiveTest.java
rename to persistence-modules/orientdb/src/test/java/com/baeldung/orientdb/OrientDBDocumentAPILiveTest.java
diff --git a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPILiveTest.java b/persistence-modules/orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPILiveTest.java
similarity index 100%
rename from orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPILiveTest.java
rename to persistence-modules/orientdb/src/test/java/com/baeldung/orientdb/OrientDBGraphAPILiveTest.java
diff --git a/orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPILiveTest.java b/persistence-modules/orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPILiveTest.java
similarity index 100%
rename from orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPILiveTest.java
rename to persistence-modules/orientdb/src/test/java/com/baeldung/orientdb/OrientDBObjectAPILiveTest.java
diff --git a/spring-boot-persistence/.gitignore b/persistence-modules/spring-boot-persistence/.gitignore
similarity index 89%
rename from spring-boot-persistence/.gitignore
rename to persistence-modules/spring-boot-persistence/.gitignore
index 88e3308e9d..da7c2c5c0a 100644
--- a/spring-boot-persistence/.gitignore
+++ b/persistence-modules/spring-boot-persistence/.gitignore
@@ -1,5 +1,5 @@
-/target/
-.settings/
-.classpath
-.project
-
+/target/
+.settings/
+.classpath
+.project
+
diff --git a/spring-boot-persistence/.mvn/wrapper/maven-wrapper.properties b/persistence-modules/spring-boot-persistence/.mvn/wrapper/maven-wrapper.properties
old mode 100755
new mode 100644
similarity index 100%
rename from spring-boot-persistence/.mvn/wrapper/maven-wrapper.properties
rename to persistence-modules/spring-boot-persistence/.mvn/wrapper/maven-wrapper.properties
diff --git a/spring-boot-persistence/README.MD b/persistence-modules/spring-boot-persistence/README.MD
similarity index 100%
rename from spring-boot-persistence/README.MD
rename to persistence-modules/spring-boot-persistence/README.MD
diff --git a/spring-boot-persistence/mvnw b/persistence-modules/spring-boot-persistence/mvnw
old mode 100755
new mode 100644
similarity index 100%
rename from spring-boot-persistence/mvnw
rename to persistence-modules/spring-boot-persistence/mvnw
diff --git a/spring-boot-persistence/mvnw.cmd b/persistence-modules/spring-boot-persistence/mvnw.cmd
old mode 100755
new mode 100644
similarity index 97%
rename from spring-boot-persistence/mvnw.cmd
rename to persistence-modules/spring-boot-persistence/mvnw.cmd
index 4f0b068a03..6a6eec39ba
--- a/spring-boot-persistence/mvnw.cmd
+++ b/persistence-modules/spring-boot-persistence/mvnw.cmd
@@ -1,145 +1,145 @@
-@REM ----------------------------------------------------------------------------
-@REM Licensed to the Apache Software Foundation (ASF) under one
-@REM or more contributor license agreements. See the NOTICE file
-@REM distributed with this work for additional information
-@REM regarding copyright ownership. The ASF licenses this file
-@REM to you under the Apache License, Version 2.0 (the
-@REM "License"); you may not use this file except in compliance
-@REM with the License. You may obtain a copy of the License at
-@REM
-@REM http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing,
-@REM software distributed under the License is distributed on an
-@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-@REM KIND, either express or implied. See the License for the
-@REM specific language governing permissions and limitations
-@REM under the License.
-@REM ----------------------------------------------------------------------------
-
-@REM ----------------------------------------------------------------------------
-@REM Maven2 Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
+@REM ----------------------------------------------------------------------------
+@REM Licensed to the Apache Software Foundation (ASF) under one
+@REM or more contributor license agreements. See the NOTICE file
+@REM distributed with this work for additional information
+@REM regarding copyright ownership. The ASF licenses this file
+@REM to you under the Apache License, Version 2.0 (the
+@REM "License"); you may not use this file except in compliance
+@REM with the License. You may obtain a copy of the License at
+@REM
+@REM http://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing,
+@REM software distributed under the License is distributed on an
+@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@REM KIND, either express or implied. See the License for the
+@REM specific language governing permissions and limitations
+@REM under the License.
+@REM ----------------------------------------------------------------------------
+
+@REM ----------------------------------------------------------------------------
+@REM Maven2 Start Up Batch script
+@REM
+@REM Required ENV vars:
+@REM JAVA_HOME - location of a JDK home dir
+@REM
+@REM Optional ENV vars
+@REM M2_HOME - location of maven2's installed home dir
+@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
+@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
+@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
+@REM e.g. to debug Maven itself, use
+@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+@REM ----------------------------------------------------------------------------
+
+@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
+@echo off
+@REM set title of command window
+title %0
+@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'
+@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
+
+@REM set %HOME% to equivalent of $HOME
+if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
+
+@REM Execute a user defined script before this one
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
+@REM check for pre script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
+if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
+:skipRcPre
+
+@setlocal
+
+set ERROR_CODE=0
+
+@REM To isolate internal variables from possible post scripts, we use another setlocal
+@setlocal
+
+@REM ==== START VALIDATION ====
+if not "%JAVA_HOME%" == "" goto OkJHome
+
+echo.
+echo Error: JAVA_HOME not found in your environment. >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+:OkJHome
+if exist "%JAVA_HOME%\bin\java.exe" goto init
+
+echo.
+echo Error: JAVA_HOME is set to an invalid directory. >&2
+echo JAVA_HOME = "%JAVA_HOME%" >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+@REM ==== END VALIDATION ====
+
+:init
+
+@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
+@REM Fallback to current working directory if not found.
+
+set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
+IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
+
+set EXEC_DIR=%CD%
+set WDIR=%EXEC_DIR%
+:findBaseDir
+IF EXIST "%WDIR%"\.mvn goto baseDirFound
+cd ..
+IF "%WDIR%"=="%CD%" goto baseDirNotFound
+set WDIR=%CD%
+goto findBaseDir
+
+:baseDirFound
+set MAVEN_PROJECTBASEDIR=%WDIR%
+cd "%EXEC_DIR%"
+goto endDetectBaseDir
+
+:baseDirNotFound
+set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
+cd "%EXEC_DIR%"
+
+:endDetectBaseDir
+
+IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
+
+@setlocal EnableExtensions EnableDelayedExpansion
+for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
+@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
+
+:endReadAdditionalConfig
+
+SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
+
+set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
+set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
+
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
+if ERRORLEVEL 1 goto error
+goto end
+
+:error
+set ERROR_CODE=1
+
+:end
+@endlocal & set ERROR_CODE=%ERROR_CODE%
+
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
+@REM check for post script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
+if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
+:skipRcPost
+
+@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
+if "%MAVEN_BATCH_PAUSE%" == "on" pause
+
+if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
+
+exit /B %ERROR_CODE%
diff --git a/spring-boot-persistence/pom.xml b/persistence-modules/spring-boot-persistence/pom.xml
similarity index 93%
rename from spring-boot-persistence/pom.xml
rename to persistence-modules/spring-boot-persistence/pom.xml
index 08989edfa9..b34e33e38a 100644
--- a/spring-boot-persistence/pom.xml
+++ b/persistence-modules/spring-boot-persistence/pom.xml
@@ -1,75 +1,75 @@
-
-
- 4.0.0
-
- com.baeldung
- spring-boot-persistence
- 0.1.0
-
-
- parent-boot-2
- com.baeldung
- 0.0.1-SNAPSHOT
- ../parent-boot-2
-
-
-
-
- org.springframework.boot
- spring-boot-starter-data-jpa
-
-
- com.zaxxer
- HikariCP
-
-
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
- org.apache.tomcat
- tomcat-jdbc
- ${tomcat-jdbc.version}
-
-
- mysql
- mysql-connector-java
- ${mysql-connector-java.version}
-
-
- com.h2database
- h2
- ${h2database.version}
- runtime
-
-
-
-
- UTF-8
- 1.8
- 8.0.12
- 9.0.10
- 1.4.197
-
-
-
- spring-boot-persistence
-
-
- src/main/resources
- true
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
-
+
+
+ 4.0.0
+
+ com.baeldung
+ spring-boot-persistence
+ 0.1.0
+
+
+ parent-boot-2
+ com.baeldung
+ 0.0.1-SNAPSHOT
+ ../../parent-boot-2
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-data-jpa
+
+
+ com.zaxxer
+ HikariCP
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+ org.apache.tomcat
+ tomcat-jdbc
+ ${tomcat-jdbc.version}
+
+
+ mysql
+ mysql-connector-java
+ ${mysql-connector-java.version}
+
+
+ com.h2database
+ h2
+ ${h2database.version}
+ runtime
+
+
+
+
+ UTF-8
+ 1.8
+ 8.0.12
+ 9.0.10
+ 1.4.197
+
+
+
+ spring-boot-persistence
+
+
+ src/main/resources
+ true
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/Application.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/Application.java
similarity index 100%
rename from spring-boot-persistence/src/main/java/com/baeldung/Application.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/Application.java
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/boot/config/H2JpaConfig.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/boot/config/H2JpaConfig.java
similarity index 100%
rename from spring-boot-persistence/src/main/java/com/baeldung/boot/config/H2JpaConfig.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/boot/config/H2JpaConfig.java
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/domain/Country.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/domain/Country.java
similarity index 100%
rename from spring-boot-persistence/src/main/java/com/baeldung/domain/Country.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/domain/Country.java
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/domain/User.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/domain/User.java
similarity index 100%
rename from spring-boot-persistence/src/main/java/com/baeldung/domain/User.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/domain/User.java
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/repository/UserRepository.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/repository/UserRepository.java
similarity index 100%
rename from spring-boot-persistence/src/main/java/com/baeldung/repository/UserRepository.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/repository/UserRepository.java
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/SpringBootConsoleApplication.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/SpringBootConsoleApplication.java
similarity index 97%
rename from spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/SpringBootConsoleApplication.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/SpringBootConsoleApplication.java
index ff37442cd4..5be61b972f 100644
--- a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/SpringBootConsoleApplication.java
+++ b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/SpringBootConsoleApplication.java
@@ -1,22 +1,22 @@
-package com.baeldung.tomcatconnectionpool.application;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
-import org.springframework.context.annotation.ComponentScan;
-import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
-import org.springframework.transaction.annotation.EnableTransactionManagement;
-
-@SpringBootApplication
-@EnableAutoConfiguration
-@ComponentScan(basePackages={"com.baeldung.tomcatconnectionpool.application"})
-@EnableJpaRepositories(basePackages="com.baeldung.tomcatconnectionpool.application.repositories")
-@EnableTransactionManagement
-@EntityScan(basePackages="com.baeldung.tomcatconnectionpool.application.entities")
-public class SpringBootConsoleApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(SpringBootConsoleApplication.class);
- }
-}
+package com.baeldung.tomcatconnectionpool.application;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.domain.EntityScan;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+
+@SpringBootApplication
+@EnableAutoConfiguration
+@ComponentScan(basePackages={"com.baeldung.tomcatconnectionpool.application"})
+@EnableJpaRepositories(basePackages="com.baeldung.tomcatconnectionpool.application.repositories")
+@EnableTransactionManagement
+@EntityScan(basePackages="com.baeldung.tomcatconnectionpool.application.entities")
+public class SpringBootConsoleApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(SpringBootConsoleApplication.class);
+ }
+}
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/entities/Customer.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/entities/Customer.java
similarity index 95%
rename from spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/entities/Customer.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/entities/Customer.java
index 4003d5aca9..712506eb98 100644
--- a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/entities/Customer.java
+++ b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/entities/Customer.java
@@ -1,53 +1,53 @@
-package com.baeldung.tomcatconnectionpool.application.entities;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.Table;
-
-@Entity
-@Table(name = "customers")
-public class Customer {
-
- @Id
- @GeneratedValue(strategy = GenerationType.AUTO)
- private long id;
- @Column(name = "first_name")
- private String firstName;
- @Column(name = "last_name")
- private String lastName;
-
- public Customer() {}
-
- public Customer(String firstName, String lastName) {
- this.firstName = firstName;
- this.lastName = lastName;
- }
-
- public long getId() {
- return id;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public String getLastName() {
- return lastName;
- }
-
- @Override
- public String toString() {
- return "Customer{" + "id=" + id + ", firstName=" + firstName + ", lastName=" + lastName + '}';
- }
-}
+package com.baeldung.tomcatconnectionpool.application.entities;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "customers")
+public class Customer {
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.AUTO)
+ private long id;
+ @Column(name = "first_name")
+ private String firstName;
+ @Column(name = "last_name")
+ private String lastName;
+
+ public Customer() {}
+
+ public Customer(String firstName, String lastName) {
+ this.firstName = firstName;
+ this.lastName = lastName;
+ }
+
+ public long getId() {
+ return id;
+ }
+
+ public void setLastName(String lastName) {
+ this.lastName = lastName;
+ }
+
+ public String getFirstName() {
+ return firstName;
+ }
+
+ public void setFirstName(String firstName) {
+ this.firstName = firstName;
+ }
+
+ public String getLastName() {
+ return lastName;
+ }
+
+ @Override
+ public String toString() {
+ return "Customer{" + "id=" + id + ", firstName=" + firstName + ", lastName=" + lastName + '}';
+ }
+}
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/repositories/CustomerRepository.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/repositories/CustomerRepository.java
similarity index 97%
rename from spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/repositories/CustomerRepository.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/repositories/CustomerRepository.java
index 770906439c..c461243cf8 100644
--- a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/repositories/CustomerRepository.java
+++ b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/repositories/CustomerRepository.java
@@ -1,12 +1,12 @@
-package com.baeldung.tomcatconnectionpool.application.repositories;
-
-import com.baeldung.tomcatconnectionpool.application.entities.Customer;
-import java.util.List;
-import org.springframework.data.repository.CrudRepository;
-import org.springframework.stereotype.Repository;
-
-@Repository
-public interface CustomerRepository extends CrudRepository {
-
- List findByLastName(String lastName);
-}
+package com.baeldung.tomcatconnectionpool.application.repositories;
+
+import com.baeldung.tomcatconnectionpool.application.entities.Customer;
+import java.util.List;
+import org.springframework.data.repository.CrudRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface CustomerRepository extends CrudRepository {
+
+ List findByLastName(String lastName);
+}
diff --git a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/runners/CommandLineCrudRunner.java b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/runners/CommandLineCrudRunner.java
similarity index 97%
rename from spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/runners/CommandLineCrudRunner.java
rename to persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/runners/CommandLineCrudRunner.java
index 9666bac5a5..722c7582a1 100644
--- a/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/runners/CommandLineCrudRunner.java
+++ b/persistence-modules/spring-boot-persistence/src/main/java/com/baeldung/tomcatconnectionpool/application/runners/CommandLineCrudRunner.java
@@ -1,37 +1,37 @@
-package com.baeldung.tomcatconnectionpool.application.runners;
-
-import com.baeldung.tomcatconnectionpool.application.entities.Customer;
-import com.baeldung.tomcatconnectionpool.application.repositories.CustomerRepository;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.CommandLineRunner;
-import org.springframework.stereotype.Component;
-
-@Component
-public class CommandLineCrudRunner implements CommandLineRunner {
-
- private static final Logger logger = LoggerFactory.getLogger(CommandLineCrudRunner.class);
-
- @Autowired
- private CustomerRepository customerRepository;
-
- @Override
- public void run(String... args) throws Exception {
- customerRepository.save(new Customer("John", "Doe"));
- customerRepository.save(new Customer("Jennifer", "Wilson"));
-
- logger.info("Customers found with findAll():");
- customerRepository.findAll().forEach(c -> logger.info(c.toString()));
-
- logger.info("Customer found with findById(1L):");
- Customer customer = customerRepository.findById(1L)
- .orElseGet(() -> new Customer("Non-existing customer", ""));
- logger.info(customer.toString());
-
- logger.info("Customer found with findByLastName('Wilson'):");
- customerRepository.findByLastName("Wilson").forEach(c -> {
- logger.info(c.toString());
- });
- }
-}
+package com.baeldung.tomcatconnectionpool.application.runners;
+
+import com.baeldung.tomcatconnectionpool.application.entities.Customer;
+import com.baeldung.tomcatconnectionpool.application.repositories.CustomerRepository;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.stereotype.Component;
+
+@Component
+public class CommandLineCrudRunner implements CommandLineRunner {
+
+ private static final Logger logger = LoggerFactory.getLogger(CommandLineCrudRunner.class);
+
+ @Autowired
+ private CustomerRepository customerRepository;
+
+ @Override
+ public void run(String... args) throws Exception {
+ customerRepository.save(new Customer("John", "Doe"));
+ customerRepository.save(new Customer("Jennifer", "Wilson"));
+
+ logger.info("Customers found with findAll():");
+ customerRepository.findAll().forEach(c -> logger.info(c.toString()));
+
+ logger.info("Customer found with findById(1L):");
+ Customer customer = customerRepository.findById(1L)
+ .orElseGet(() -> new Customer("Non-existing customer", ""));
+ logger.info(customer.toString());
+
+ logger.info("Customer found with findByLastName('Wilson'):");
+ customerRepository.findByLastName("Wilson").forEach(c -> {
+ logger.info(c.toString());
+ });
+ }
+}
diff --git a/spring-boot-persistence/src/main/java/org/baeldung/boot/domain/GenericEntity.java b/persistence-modules/spring-boot-persistence/src/main/java/org/baeldung/boot/domain/GenericEntity.java
similarity index 100%
rename from spring-boot-persistence/src/main/java/org/baeldung/boot/domain/GenericEntity.java
rename to persistence-modules/spring-boot-persistence/src/main/java/org/baeldung/boot/domain/GenericEntity.java
diff --git a/spring-boot-persistence/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java b/persistence-modules/spring-boot-persistence/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java
similarity index 100%
rename from spring-boot-persistence/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java
rename to persistence-modules/spring-boot-persistence/src/main/java/org/baeldung/boot/repository/GenericEntityRepository.java
diff --git a/spring-boot-persistence/src/main/resources/application.properties b/persistence-modules/spring-boot-persistence/src/main/resources/application.properties
similarity index 100%
rename from spring-boot-persistence/src/main/resources/application.properties
rename to persistence-modules/spring-boot-persistence/src/main/resources/application.properties
diff --git a/spring-boot-persistence/src/main/resources/data.sql b/persistence-modules/spring-boot-persistence/src/main/resources/data.sql
similarity index 100%
rename from spring-boot-persistence/src/main/resources/data.sql
rename to persistence-modules/spring-boot-persistence/src/main/resources/data.sql
diff --git a/spring-data-keyvalue/src/main/resources/logback.xml b/persistence-modules/spring-boot-persistence/src/main/resources/logback.xml
similarity index 100%
rename from spring-data-keyvalue/src/main/resources/logback.xml
rename to persistence-modules/spring-boot-persistence/src/main/resources/logback.xml
diff --git a/spring-boot-persistence/src/main/resources/persistence-generic-entity.properties b/persistence-modules/spring-boot-persistence/src/main/resources/persistence-generic-entity.properties
similarity index 100%
rename from spring-boot-persistence/src/main/resources/persistence-generic-entity.properties
rename to persistence-modules/spring-boot-persistence/src/main/resources/persistence-generic-entity.properties
diff --git a/spring-boot-persistence/src/main/resources/schema.sql b/persistence-modules/spring-boot-persistence/src/main/resources/schema.sql
similarity index 100%
rename from spring-boot-persistence/src/main/resources/schema.sql
rename to persistence-modules/spring-boot-persistence/src/main/resources/schema.sql
diff --git a/spring-boot-persistence/src/test/java/com/baeldung/SpringBootH2IntegrationTest.java b/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/SpringBootH2IntegrationTest.java
similarity index 100%
rename from spring-boot-persistence/src/test/java/com/baeldung/SpringBootH2IntegrationTest.java
rename to persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/SpringBootH2IntegrationTest.java
diff --git a/spring-boot-persistence/src/test/java/com/baeldung/SpringBootJPAIntegrationTest.java b/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/SpringBootJPAIntegrationTest.java
similarity index 100%
rename from spring-boot-persistence/src/test/java/com/baeldung/SpringBootJPAIntegrationTest.java
rename to persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/SpringBootJPAIntegrationTest.java
diff --git a/spring-boot-persistence/src/test/java/com/baeldung/SpringBootProfileIntegrationTest.java b/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/SpringBootProfileIntegrationTest.java
similarity index 100%
rename from spring-boot-persistence/src/test/java/com/baeldung/SpringBootProfileIntegrationTest.java
rename to persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/SpringBootProfileIntegrationTest.java
diff --git a/spring-boot-persistence/src/test/java/com/baeldung/repository/UserRepositoryIntegrationTest.java b/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/repository/UserRepositoryIntegrationTest.java
similarity index 100%
rename from spring-boot-persistence/src/test/java/com/baeldung/repository/UserRepositoryIntegrationTest.java
rename to persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/repository/UserRepositoryIntegrationTest.java
diff --git a/spring-boot-persistence/src/test/java/com/baeldung/tomcatconnectionpool/test/application/SpringBootTomcatConnectionPoolIntegrationTest.java b/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/tomcatconnectionpool/test/application/SpringBootTomcatConnectionPoolIntegrationTest.java
similarity index 97%
rename from spring-boot-persistence/src/test/java/com/baeldung/tomcatconnectionpool/test/application/SpringBootTomcatConnectionPoolIntegrationTest.java
rename to persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/tomcatconnectionpool/test/application/SpringBootTomcatConnectionPoolIntegrationTest.java
index c68e137fb0..eb000bbc09 100644
--- a/spring-boot-persistence/src/test/java/com/baeldung/tomcatconnectionpool/test/application/SpringBootTomcatConnectionPoolIntegrationTest.java
+++ b/persistence-modules/spring-boot-persistence/src/test/java/com/baeldung/tomcatconnectionpool/test/application/SpringBootTomcatConnectionPoolIntegrationTest.java
@@ -1,22 +1,22 @@
-package com.baeldung.tomcatconnectionpool.test.application;
-
-import javax.sql.DataSource;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.junit4.SpringRunner;
-import static org.assertj.core.api.Assertions.*;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest
-public class SpringBootTomcatConnectionPoolIntegrationTest {
-
- @Autowired
- private DataSource dataSource;
-
- @Test
- public void givenTomcatConnectionPoolInstance_whenCheckedPoolClassName_thenCorrect() {
- assertThat(dataSource.getClass().getName()).isEqualTo("org.apache.tomcat.jdbc.pool.DataSource");
- }
-}
+package com.baeldung.tomcatconnectionpool.test.application;
+
+import javax.sql.DataSource;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.junit4.SpringRunner;
+import static org.assertj.core.api.Assertions.*;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class SpringBootTomcatConnectionPoolIntegrationTest {
+
+ @Autowired
+ private DataSource dataSource;
+
+ @Test
+ public void givenTomcatConnectionPoolInstance_whenCheckedPoolClassName_thenCorrect() {
+ assertThat(dataSource.getClass().getName()).isEqualTo("org.apache.tomcat.jdbc.pool.DataSource");
+ }
+}
diff --git a/spring-boot-persistence/src/test/java/org/baeldung/config/H2TestProfileJPAConfig.java b/persistence-modules/spring-boot-persistence/src/test/java/org/baeldung/config/H2TestProfileJPAConfig.java
similarity index 100%
rename from spring-boot-persistence/src/test/java/org/baeldung/config/H2TestProfileJPAConfig.java
rename to persistence-modules/spring-boot-persistence/src/test/java/org/baeldung/config/H2TestProfileJPAConfig.java
diff --git a/spring-boot-persistence/src/test/resources/application.properties b/persistence-modules/spring-boot-persistence/src/test/resources/application.properties
similarity index 100%
rename from spring-boot-persistence/src/test/resources/application.properties
rename to persistence-modules/spring-boot-persistence/src/test/resources/application.properties
diff --git a/spring-boot-persistence/src/test/resources/import_active_users.sql b/persistence-modules/spring-boot-persistence/src/test/resources/import_active_users.sql
similarity index 100%
rename from spring-boot-persistence/src/test/resources/import_active_users.sql
rename to persistence-modules/spring-boot-persistence/src/test/resources/import_active_users.sql
diff --git a/spring-boot-persistence/src/test/resources/import_inactive_users.sql b/persistence-modules/spring-boot-persistence/src/test/resources/import_inactive_users.sql
similarity index 100%
rename from spring-boot-persistence/src/test/resources/import_inactive_users.sql
rename to persistence-modules/spring-boot-persistence/src/test/resources/import_inactive_users.sql
diff --git a/spring-boot-persistence/src/test/resources/migrated_users.sql b/persistence-modules/spring-boot-persistence/src/test/resources/migrated_users.sql
similarity index 100%
rename from spring-boot-persistence/src/test/resources/migrated_users.sql
rename to persistence-modules/spring-boot-persistence/src/test/resources/migrated_users.sql
diff --git a/spring-data-elasticsearch/README.md b/persistence-modules/spring-data-elasticsearch/README.md
similarity index 100%
rename from spring-data-elasticsearch/README.md
rename to persistence-modules/spring-data-elasticsearch/README.md
diff --git a/spring-data-elasticsearch/pom.xml b/persistence-modules/spring-data-elasticsearch/pom.xml
similarity index 98%
rename from spring-data-elasticsearch/pom.xml
rename to persistence-modules/spring-data-elasticsearch/pom.xml
index 99d8a70807..ee9e71a1cb 100644
--- a/spring-data-elasticsearch/pom.xml
+++ b/persistence-modules/spring-data-elasticsearch/pom.xml
@@ -11,7 +11,7 @@
com.baeldung
parent-spring-5
0.0.1-SNAPSHOT
- ../parent-spring-5
+ ../../parent-spring-5
diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/elasticsearch/Person.java b/persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/elasticsearch/Person.java
similarity index 100%
rename from spring-data-elasticsearch/src/main/java/com/baeldung/elasticsearch/Person.java
rename to persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/elasticsearch/Person.java
diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/config/Config.java b/persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/config/Config.java
similarity index 100%
rename from spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/config/Config.java
rename to persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/config/Config.java
diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Article.java b/persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Article.java
similarity index 100%
rename from spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Article.java
rename to persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Article.java
diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Author.java b/persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Author.java
similarity index 100%
rename from spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Author.java
rename to persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/model/Author.java
diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java b/persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java
similarity index 100%
rename from spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java
rename to persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java
diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java b/persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java
similarity index 100%
rename from spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java
rename to persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java
diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java b/persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java
similarity index 100%
rename from spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java
rename to persistence-modules/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java
diff --git a/spring-data-elasticsearch/src/main/resources/log4j2.properties b/persistence-modules/spring-data-elasticsearch/src/main/resources/log4j2.properties
similarity index 100%
rename from spring-data-elasticsearch/src/main/resources/log4j2.properties
rename to persistence-modules/spring-data-elasticsearch/src/main/resources/log4j2.properties
diff --git a/spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/ElasticSearchManualTest.java b/persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/ElasticSearchManualTest.java
similarity index 100%
rename from spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/ElasticSearchManualTest.java
rename to persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/ElasticSearchManualTest.java
diff --git a/spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/GeoQueriesIntegrationTest.java b/persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/GeoQueriesIntegrationTest.java
similarity index 100%
rename from spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/GeoQueriesIntegrationTest.java
rename to persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/elasticsearch/GeoQueriesIntegrationTest.java
diff --git a/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java b/persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java
similarity index 100%
rename from spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java
rename to persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java
diff --git a/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java b/persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java
similarity index 100%
rename from spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java
rename to persistence-modules/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java
diff --git a/spring-data-elasticsearch/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/persistence-modules/spring-data-elasticsearch/src/test/java/org/baeldung/SpringContextIntegrationTest.java
similarity index 100%
rename from spring-data-elasticsearch/src/test/java/org/baeldung/SpringContextIntegrationTest.java
rename to persistence-modules/spring-data-elasticsearch/src/test/java/org/baeldung/SpringContextIntegrationTest.java
diff --git a/spring-data-jpa/README.md b/persistence-modules/spring-data-jpa/README.md
similarity index 100%
rename from spring-data-jpa/README.md
rename to persistence-modules/spring-data-jpa/README.md
diff --git a/spring-data-jpa/pom.xml b/persistence-modules/spring-data-jpa/pom.xml
similarity index 95%
rename from spring-data-jpa/pom.xml
rename to persistence-modules/spring-data-jpa/pom.xml
index 8691ce1f09..643210ab89 100644
--- a/spring-data-jpa/pom.xml
+++ b/persistence-modules/spring-data-jpa/pom.xml
@@ -2,15 +2,16 @@
+ 4.0.0
+ com.baeldung
+ spring-data-jpa
+
parent-boot-2
com.baeldung
0.0.1-SNAPSHOT
- ../parent-boot-2
+ ../../parent-boot-2
- 4.0.0
-
- spring-data-jpa
diff --git a/spring-data-jpa/src/main/java/com/baeldung/Application.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/Application.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/Application.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/Application.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceConfiguration.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceConfiguration.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/config/PersistenceConfiguration.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceConfiguration.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceProductConfiguration.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceProductConfiguration.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/config/PersistenceProductConfiguration.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceProductConfiguration.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceUserConfiguration.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceUserConfiguration.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/config/PersistenceUserConfiguration.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/config/PersistenceUserConfiguration.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/IFooDao.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/IFooDao.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/IFooDao.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/IFooDao.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ArticleRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ArticleRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ArticleRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ArticleRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemTypeRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemTypeRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemTypeRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/CustomItemTypeRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedStudentRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedStudentRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedStudentRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ExtendedStudentRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/IBarCrudRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/IBarCrudRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/IBarCrudRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/IBarCrudRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/InventoryRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/InventoryRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/InventoryRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/InventoryRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ItemTypeRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ItemTypeRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ItemTypeRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ItemTypeRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/LocationRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/LocationRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/LocationRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/LocationRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ReadOnlyLocationRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ReadOnlyLocationRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ReadOnlyLocationRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/ReadOnlyLocationRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/StoreRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/StoreRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/StoreRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/StoreRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemRepositoryImpl.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemRepositoryImpl.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemRepositoryImpl.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemRepositoryImpl.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemTypeRepositoryImpl.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemTypeRepositoryImpl.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemTypeRepositoryImpl.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/CustomItemTypeRepositoryImpl.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/ExtendedRepositoryImpl.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/ExtendedRepositoryImpl.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/ExtendedRepositoryImpl.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/impl/ExtendedRepositoryImpl.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/product/ProductRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/product/ProductRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/product/ProductRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/product/ProductRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/PossessionRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/PossessionRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/PossessionRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/PossessionRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/UserRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/UserRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/UserRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/dao/repositories/user/UserRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2Repository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2Repository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2Repository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate2Repository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3Repository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3Repository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3Repository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/Aggregate3Repository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/AggregateRepository.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/AggregateRepository.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/AggregateRepository.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/AggregateRepository.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DddConfig.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DddConfig.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/DddConfig.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DddConfig.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainEvent.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainEvent.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainEvent.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainEvent.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainService.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainService.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainService.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/ddd/event/DomainService.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/Article.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Article.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/Article.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Article.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/Bar.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Bar.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/Bar.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Bar.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/Foo.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Foo.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/Foo.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Foo.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/Item.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Item.java
similarity index 94%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/Item.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Item.java
index 97ce14d92d..1e58fb25ba 100644
--- a/spring-data-jpa/src/main/java/com/baeldung/domain/Item.java
+++ b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Item.java
@@ -1,81 +1,81 @@
-package com.baeldung.domain;
-
-import java.math.BigDecimal;
-
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.ManyToOne;
-
-@Entity
-public class Item {
-
- private String color;
- private String grade;
-
- @Id
- private Long id;
-
- @ManyToOne
- private ItemType itemType;
-
- private String name;
- private BigDecimal price;
- @ManyToOne
- private Store store;
-
- public String getColor() {
- return color;
- }
-
- public String getGrade() {
- return grade;
- }
-
- public Long getId() {
- return id;
- }
-
- public ItemType getItemType() {
- return itemType;
- }
-
- public String getName() {
- return name;
- }
-
- public BigDecimal getPrice() {
- return price;
- }
-
- public Store getStore() {
- return store;
- }
-
- public void setColor(String color) {
- this.color = color;
- }
-
- public void setGrade(String grade) {
- this.grade = grade;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public void setItemType(ItemType itemType) {
- this.itemType = itemType;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public void setPrice(BigDecimal price) {
- this.price = price;
- }
-
- public void setStore(Store store) {
- this.store = store;
- }
-}
+package com.baeldung.domain;
+
+import java.math.BigDecimal;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.ManyToOne;
+
+@Entity
+public class Item {
+
+ private String color;
+ private String grade;
+
+ @Id
+ private Long id;
+
+ @ManyToOne
+ private ItemType itemType;
+
+ private String name;
+ private BigDecimal price;
+ @ManyToOne
+ private Store store;
+
+ public String getColor() {
+ return color;
+ }
+
+ public String getGrade() {
+ return grade;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public ItemType getItemType() {
+ return itemType;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public BigDecimal getPrice() {
+ return price;
+ }
+
+ public Store getStore() {
+ return store;
+ }
+
+ public void setColor(String color) {
+ this.color = color;
+ }
+
+ public void setGrade(String grade) {
+ this.grade = grade;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public void setItemType(ItemType itemType) {
+ this.itemType = itemType;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public void setPrice(BigDecimal price) {
+ this.price = price;
+ }
+
+ public void setStore(Store store) {
+ this.store = store;
+ }
+}
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/ItemType.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/ItemType.java
similarity index 94%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/ItemType.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/ItemType.java
index 412079c2ae..b0349e0471 100644
--- a/spring-data-jpa/src/main/java/com/baeldung/domain/ItemType.java
+++ b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/ItemType.java
@@ -1,46 +1,46 @@
-package com.baeldung.domain;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-
-@Entity
-public class ItemType {
-
- @Id
- private Long id;
- @OneToMany(cascade = CascadeType.ALL)
- @JoinColumn(name = "ITEM_TYPE_ID")
- private List- items = new ArrayList<>();
-
- private String name;
-
- public Long getId() {
- return id;
- }
-
- public List
- getItems() {
- return items;
- }
-
- public String getName() {
- return name;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public void setItems(List
- items) {
- this.items = items;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-}
+package com.baeldung.domain;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+
+@Entity
+public class ItemType {
+
+ @Id
+ private Long id;
+ @OneToMany(cascade = CascadeType.ALL)
+ @JoinColumn(name = "ITEM_TYPE_ID")
+ private List
- items = new ArrayList<>();
+
+ private String name;
+
+ public Long getId() {
+ return id;
+ }
+
+ public List
- getItems() {
+ return items;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public void setItems(List
- items) {
+ this.items = items;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+}
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/KVTag.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/KVTag.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/KVTag.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/KVTag.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/Location.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Location.java
similarity index 95%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/Location.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Location.java
index 2178d378eb..4ca7295986 100644
--- a/spring-data-jpa/src/main/java/com/baeldung/domain/Location.java
+++ b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Location.java
@@ -1,55 +1,55 @@
-package com.baeldung.domain;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-
-@Entity
-public class Location {
-
- private String city;
- private String country;
- @Id
- private Long id;
-
- @OneToMany(cascade = CascadeType.ALL)
- @JoinColumn(name = "LOCATION_ID")
- private List stores = new ArrayList<>();
-
- public String getCity() {
- return city;
- }
-
- public String getCountry() {
- return country;
- }
-
- public Long getId() {
- return id;
- }
-
- public List getStores() {
- return stores;
- }
-
- public void setCity(String city) {
- this.city = city;
- }
-
- public void setCountry(String country) {
- this.country = country;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public void setStores(List stores) {
- this.stores = stores;
- }
-}
+package com.baeldung.domain;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+
+@Entity
+public class Location {
+
+ private String city;
+ private String country;
+ @Id
+ private Long id;
+
+ @OneToMany(cascade = CascadeType.ALL)
+ @JoinColumn(name = "LOCATION_ID")
+ private List stores = new ArrayList<>();
+
+ public String getCity() {
+ return city;
+ }
+
+ public String getCountry() {
+ return country;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public List getStores() {
+ return stores;
+ }
+
+ public void setCity(String city) {
+ this.city = city;
+ }
+
+ public void setCountry(String country) {
+ this.country = country;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public void setStores(List stores) {
+ this.stores = stores;
+ }
+}
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/MerchandiseEntity.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/MerchandiseEntity.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/MerchandiseEntity.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/MerchandiseEntity.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/SkillTag.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/SkillTag.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/SkillTag.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/SkillTag.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/Store.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Store.java
similarity index 95%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/Store.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Store.java
index e04684c479..4172051c71 100644
--- a/spring-data-jpa/src/main/java/com/baeldung/domain/Store.java
+++ b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Store.java
@@ -1,76 +1,76 @@
-package com.baeldung.domain;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
-
-@Entity
-public class Store {
-
- private Boolean active;
- @Id
- private Long id;
- @OneToMany(cascade = CascadeType.ALL)
- @JoinColumn(name = "STORE_ID")
- private List
- items = new ArrayList<>();
- private Long itemsSold;
-
- @ManyToOne
- private Location location;
-
- private String name;
-
- public Boolean getActive() {
- return active;
- }
-
- public Long getId() {
- return id;
- }
-
- public List
- getItems() {
- return items;
- }
-
- public Long getItemsSold() {
- return itemsSold;
- }
-
- public Location getLocation() {
- return location;
- }
-
- public String getName() {
- return name;
- }
-
- public void setActive(Boolean active) {
- this.active = active;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public void setItems(List
- items) {
- this.items = items;
- }
-
- public void setItemsSold(Long itemsSold) {
- this.itemsSold = itemsSold;
- }
-
- public void setLocation(Location location) {
- this.location = location;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-}
+package com.baeldung.domain;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.OneToMany;
+
+@Entity
+public class Store {
+
+ private Boolean active;
+ @Id
+ private Long id;
+ @OneToMany(cascade = CascadeType.ALL)
+ @JoinColumn(name = "STORE_ID")
+ private List
- items = new ArrayList<>();
+ private Long itemsSold;
+
+ @ManyToOne
+ private Location location;
+
+ private String name;
+
+ public Boolean getActive() {
+ return active;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public List
- getItems() {
+ return items;
+ }
+
+ public Long getItemsSold() {
+ return itemsSold;
+ }
+
+ public Location getLocation() {
+ return location;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setActive(Boolean active) {
+ this.active = active;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public void setItems(List
- items) {
+ this.items = items;
+ }
+
+ public void setItemsSold(Long itemsSold) {
+ this.itemsSold = itemsSold;
+ }
+
+ public void setLocation(Location location) {
+ this.location = location;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+}
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/Student.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Student.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/Student.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/Student.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/product/Product.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/product/Product.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/product/Product.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/product/Product.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/user/Possession.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/user/Possession.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/user/Possession.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/user/Possession.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/domain/user/User.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/user/User.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/domain/user/User.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/domain/user/User.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/services/IBarService.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/IBarService.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/services/IBarService.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/IBarService.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/services/IFooService.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/IFooService.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/services/IFooService.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/IFooService.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/services/IOperations.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/IOperations.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/services/IOperations.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/IOperations.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractService.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractService.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractService.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractService.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractSpringDataJpaService.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractSpringDataJpaService.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractSpringDataJpaService.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/AbstractSpringDataJpaService.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/services/impl/BarSpringDataJpaService.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/BarSpringDataJpaService.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/services/impl/BarSpringDataJpaService.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/BarSpringDataJpaService.java
diff --git a/spring-data-jpa/src/main/java/com/baeldung/services/impl/FooService.java b/persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/FooService.java
similarity index 100%
rename from spring-data-jpa/src/main/java/com/baeldung/services/impl/FooService.java
rename to persistence-modules/spring-data-jpa/src/main/java/com/baeldung/services/impl/FooService.java
diff --git a/spring-data-jpa/src/main/resources/application.properties b/persistence-modules/spring-data-jpa/src/main/resources/application.properties
similarity index 100%
rename from spring-data-jpa/src/main/resources/application.properties
rename to persistence-modules/spring-data-jpa/src/main/resources/application.properties
diff --git a/spring-data-jpa/src/main/resources/ddd.properties b/persistence-modules/spring-data-jpa/src/main/resources/ddd.properties
similarity index 100%
rename from spring-data-jpa/src/main/resources/ddd.properties
rename to persistence-modules/spring-data-jpa/src/main/resources/ddd.properties
diff --git a/spring-hibernate3/src/main/resources/logback.xml b/persistence-modules/spring-data-jpa/src/main/resources/logback.xml
similarity index 100%
rename from spring-hibernate3/src/main/resources/logback.xml
rename to persistence-modules/spring-data-jpa/src/main/resources/logback.xml
diff --git a/spring-data-jpa/src/main/resources/persistence-multiple-db.properties b/persistence-modules/spring-data-jpa/src/main/resources/persistence-multiple-db.properties
similarity index 100%
rename from spring-data-jpa/src/main/resources/persistence-multiple-db.properties
rename to persistence-modules/spring-data-jpa/src/main/resources/persistence-multiple-db.properties
diff --git a/spring-data-jpa/src/main/resources/persistence.properties b/persistence-modules/spring-data-jpa/src/main/resources/persistence.properties
similarity index 100%
rename from spring-data-jpa/src/main/resources/persistence.properties
rename to persistence-modules/spring-data-jpa/src/main/resources/persistence.properties
diff --git a/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ArticleRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ArticleRepositoryIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ArticleRepositoryIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ArticleRepositoryIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ExtendedStudentRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ExtendedStudentRepositoryIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ExtendedStudentRepositoryIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/ExtendedStudentRepositoryIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/InventoryRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/InventoryRepositoryIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/dao/repositories/InventoryRepositoryIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/InventoryRepositoryIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/JpaRepositoriesIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/JpaRepositoriesIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/dao/repositories/JpaRepositoriesIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/JpaRepositoriesIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/UserRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/UserRepositoryIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/dao/repositories/UserRepositoryIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/dao/repositories/UserRepositoryIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate2EventsIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate2EventsIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate2EventsIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate2EventsIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate3EventsIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate3EventsIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate3EventsIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/Aggregate3EventsIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/ddd/event/AggregateEventsIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/AggregateEventsIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/ddd/event/AggregateEventsIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/AggregateEventsIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/ddd/event/TestEventHandler.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/TestEventHandler.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/ddd/event/TestEventHandler.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/ddd/event/TestEventHandler.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/services/AbstractServicePersistenceIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/AbstractServicePersistenceIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/services/AbstractServicePersistenceIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/AbstractServicePersistenceIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/services/FooServicePersistenceIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/FooServicePersistenceIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/services/FooServicePersistenceIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/FooServicePersistenceIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/services/JpaMultipleDBIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/JpaMultipleDBIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/services/JpaMultipleDBIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/JpaMultipleDBIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/services/SpringDataJPABarAuditIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/SpringDataJPABarAuditIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/services/SpringDataJPABarAuditIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/services/SpringDataJPABarAuditIntegrationTest.java
diff --git a/spring-data-jpa/src/test/java/com/baeldung/util/IDUtil.java b/persistence-modules/spring-data-jpa/src/test/java/com/baeldung/util/IDUtil.java
similarity index 100%
rename from spring-data-jpa/src/test/java/com/baeldung/util/IDUtil.java
rename to persistence-modules/spring-data-jpa/src/test/java/com/baeldung/util/IDUtil.java
diff --git a/spring-data-jpa/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/persistence-modules/spring-data-jpa/src/test/java/org/baeldung/SpringContextIntegrationTest.java
similarity index 100%
rename from spring-data-jpa/src/test/java/org/baeldung/SpringContextIntegrationTest.java
rename to persistence-modules/spring-data-jpa/src/test/java/org/baeldung/SpringContextIntegrationTest.java
diff --git a/spring-data-jpa/src/test/resources/import_entities.sql b/persistence-modules/spring-data-jpa/src/test/resources/import_entities.sql
similarity index 100%
rename from spring-data-jpa/src/test/resources/import_entities.sql
rename to persistence-modules/spring-data-jpa/src/test/resources/import_entities.sql
diff --git a/spring-data-keyvalue/README.md b/persistence-modules/spring-data-keyvalue/README.md
similarity index 100%
rename from spring-data-keyvalue/README.md
rename to persistence-modules/spring-data-keyvalue/README.md
diff --git a/spring-data-keyvalue/pom.xml b/persistence-modules/spring-data-keyvalue/pom.xml
similarity index 93%
rename from spring-data-keyvalue/pom.xml
rename to persistence-modules/spring-data-keyvalue/pom.xml
index edd8967b97..6675595f2b 100644
--- a/spring-data-keyvalue/pom.xml
+++ b/persistence-modules/spring-data-keyvalue/pom.xml
@@ -7,7 +7,7 @@
parent-boot-2
com.baeldung
0.0.1-SNAPSHOT
- ../parent-boot-2
+ ../../parent-boot-2
diff --git a/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/Configurations.java b/persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/Configurations.java
similarity index 100%
rename from spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/Configurations.java
rename to persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/Configurations.java
diff --git a/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/SpringDataKeyValueApplication.java b/persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/SpringDataKeyValueApplication.java
similarity index 100%
rename from spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/SpringDataKeyValueApplication.java
rename to persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/SpringDataKeyValueApplication.java
diff --git a/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/repositories/EmployeeRepository.java b/persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/repositories/EmployeeRepository.java
similarity index 100%
rename from spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/repositories/EmployeeRepository.java
rename to persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/repositories/EmployeeRepository.java
diff --git a/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/EmployeeService.java b/persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/EmployeeService.java
similarity index 100%
rename from spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/EmployeeService.java
rename to persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/EmployeeService.java
diff --git a/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithKeyValueTemplate.java b/persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithKeyValueTemplate.java
similarity index 100%
rename from spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithKeyValueTemplate.java
rename to persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithKeyValueTemplate.java
diff --git a/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithRepository.java b/persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithRepository.java
similarity index 100%
rename from spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithRepository.java
rename to persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/services/impl/EmployeeServicesWithRepository.java
diff --git a/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/vo/Employee.java b/persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/vo/Employee.java
similarity index 100%
rename from spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/vo/Employee.java
rename to persistence-modules/spring-data-keyvalue/src/main/java/com/baeldung/spring/data/keyvalue/vo/Employee.java
diff --git a/persistence-modules/spring-data-keyvalue/src/main/resources/logback.xml b/persistence-modules/spring-data-keyvalue/src/main/resources/logback.xml
new file mode 100644
index 0000000000..7d900d8ea8
--- /dev/null
+++ b/persistence-modules/spring-data-keyvalue/src/main/resources/logback.xml
@@ -0,0 +1,13 @@
+
+
+
+
+ %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithKeyValueRepositoryIntegrationTest.java b/persistence-modules/spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithKeyValueRepositoryIntegrationTest.java
similarity index 100%
rename from spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithKeyValueRepositoryIntegrationTest.java
rename to persistence-modules/spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithKeyValueRepositoryIntegrationTest.java
diff --git a/spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithRepositoryIntegrationTest.java b/persistence-modules/spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithRepositoryIntegrationTest.java
similarity index 100%
rename from spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithRepositoryIntegrationTest.java
rename to persistence-modules/spring-data-keyvalue/src/test/java/com/baeldung/spring/data/keyvalue/services/test/EmployeeServicesWithRepositoryIntegrationTest.java
diff --git a/spring-data-keyvalue/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/persistence-modules/spring-data-keyvalue/src/test/java/org/baeldung/SpringContextIntegrationTest.java
similarity index 100%
rename from spring-data-keyvalue/src/test/java/org/baeldung/SpringContextIntegrationTest.java
rename to persistence-modules/spring-data-keyvalue/src/test/java/org/baeldung/SpringContextIntegrationTest.java
diff --git a/spring-data-mongodb/README.md b/persistence-modules/spring-data-mongodb/README.md
similarity index 100%
rename from spring-data-mongodb/README.md
rename to persistence-modules/spring-data-mongodb/README.md
diff --git a/spring-data-mongodb/pom.xml b/persistence-modules/spring-data-mongodb/pom.xml
similarity index 98%
rename from spring-data-mongodb/pom.xml
rename to persistence-modules/spring-data-mongodb/pom.xml
index 072ed7a2ac..466acf5a43 100644
--- a/spring-data-mongodb/pom.xml
+++ b/persistence-modules/spring-data-mongodb/pom.xml
@@ -10,7 +10,7 @@
com.baeldung
parent-spring-5
0.0.1-SNAPSHOT
- ../parent-spring-5
+ ../../parent-spring-5
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/annotation/CascadeSave.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/annotation/CascadeSave.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/annotation/CascadeSave.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/annotation/CascadeSave.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/config/MongoConfig.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/config/MongoConfig.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/config/MongoConfig.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/config/MongoConfig.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/config/MongoReactiveConfig.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/config/MongoReactiveConfig.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/config/MongoReactiveConfig.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/config/MongoReactiveConfig.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/config/SimpleMongoConfig.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/config/SimpleMongoConfig.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/config/SimpleMongoConfig.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/config/SimpleMongoConfig.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/converter/UserWriterConverter.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/converter/UserWriterConverter.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/converter/UserWriterConverter.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/converter/UserWriterConverter.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeCallback.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeCallback.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/event/CascadeCallback.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeCallback.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeSaveMongoEventListener.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeSaveMongoEventListener.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/event/CascadeSaveMongoEventListener.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/CascadeSaveMongoEventListener.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/event/FieldCallback.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/FieldCallback.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/event/FieldCallback.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/FieldCallback.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/event/UserCascadeSaveMongoEventListener.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/UserCascadeSaveMongoEventListener.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/event/UserCascadeSaveMongoEventListener.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/event/UserCascadeSaveMongoEventListener.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/model/EmailAddress.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/model/EmailAddress.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/model/EmailAddress.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/model/EmailAddress.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/model/User.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/model/User.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/model/User.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/model/User.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/reactive/repository/UserRepository.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/reactive/repository/UserRepository.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/reactive/repository/UserRepository.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/reactive/repository/UserRepository.java
diff --git a/spring-data-mongodb/src/main/java/com/baeldung/repository/UserRepository.java b/persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/repository/UserRepository.java
similarity index 100%
rename from spring-data-mongodb/src/main/java/com/baeldung/repository/UserRepository.java
rename to persistence-modules/spring-data-mongodb/src/main/java/com/baeldung/repository/UserRepository.java
diff --git a/spring-data-mongodb/src/main/resources/logback.xml b/persistence-modules/spring-data-mongodb/src/main/resources/logback.xml
similarity index 100%
rename from spring-data-mongodb/src/main/resources/logback.xml
rename to persistence-modules/spring-data-mongodb/src/main/resources/logback.xml
diff --git a/spring-data-mongodb/src/main/resources/mongoConfig.xml b/persistence-modules/spring-data-mongodb/src/main/resources/mongoConfig.xml
similarity index 100%
rename from spring-data-mongodb/src/main/resources/mongoConfig.xml
rename to persistence-modules/spring-data-mongodb/src/main/resources/mongoConfig.xml
diff --git a/spring-data-mongodb/src/main/resources/test.png b/persistence-modules/spring-data-mongodb/src/main/resources/test.png
similarity index 100%
rename from spring-data-mongodb/src/main/resources/test.png
rename to persistence-modules/spring-data-mongodb/src/main/resources/test.png
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/aggregation/ZipsAggregationLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/aggregation/ZipsAggregationLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/aggregation/ZipsAggregationLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/aggregation/ZipsAggregationLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/aggregation/model/StatePopulation.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/aggregation/model/StatePopulation.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/aggregation/model/StatePopulation.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/aggregation/model/StatePopulation.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/gridfs/GridFSLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/gridfs/GridFSLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/gridfs/GridFSLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/gridfs/GridFSLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/DocumentQueryLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/DocumentQueryLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/DocumentQueryLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/DocumentQueryLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateProjectionLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/mongotemplate/MongoTemplateQueryLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/repository/BaseQueryLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/BaseQueryLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/repository/BaseQueryLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/BaseQueryLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/repository/DSLQueryLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/DSLQueryLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/repository/DSLQueryLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/DSLQueryLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/repository/JSONQueryLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/JSONQueryLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/repository/JSONQueryLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/JSONQueryLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/repository/QueryMethodsLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/QueryMethodsLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/repository/QueryMethodsLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/QueryMethodsLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryProjectionLiveTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryProjectionLiveTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryProjectionLiveTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/repository/UserRepositoryProjectionLiveTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionReactiveIntegrationTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionReactiveIntegrationTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionReactiveIntegrationTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionReactiveIntegrationTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionTemplateIntegrationTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionTemplateIntegrationTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionTemplateIntegrationTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionTemplateIntegrationTest.java
diff --git a/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionalIntegrationTest.java b/persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionalIntegrationTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionalIntegrationTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/com/baeldung/transaction/MongoTransactionalIntegrationTest.java
diff --git a/spring-data-mongodb/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/persistence-modules/spring-data-mongodb/src/test/java/org/baeldung/SpringContextIntegrationTest.java
similarity index 100%
rename from spring-data-mongodb/src/test/java/org/baeldung/SpringContextIntegrationTest.java
rename to persistence-modules/spring-data-mongodb/src/test/java/org/baeldung/SpringContextIntegrationTest.java
diff --git a/spring-data-mongodb/src/test/resources/zips.json b/persistence-modules/spring-data-mongodb/src/test/resources/zips.json
similarity index 100%
rename from spring-data-mongodb/src/test/resources/zips.json
rename to persistence-modules/spring-data-mongodb/src/test/resources/zips.json
diff --git a/spring-hibernate3/README.md b/persistence-modules/spring-hibernate3/README.md
similarity index 100%
rename from spring-hibernate3/README.md
rename to persistence-modules/spring-hibernate3/README.md
diff --git a/spring-hibernate3/src/main/java/org/baeldung/spring/PersistenceConfigHibernate3.java b/persistence-modules/spring-hibernate3/src/main/java/org/baeldung/spring/PersistenceConfigHibernate3.java
similarity index 97%
rename from spring-hibernate3/src/main/java/org/baeldung/spring/PersistenceConfigHibernate3.java
rename to persistence-modules/spring-hibernate3/src/main/java/org/baeldung/spring/PersistenceConfigHibernate3.java
index a128d8848c..f38da21dc0 100644
--- a/spring-hibernate3/src/main/java/org/baeldung/spring/PersistenceConfigHibernate3.java
+++ b/persistence-modules/spring-hibernate3/src/main/java/org/baeldung/spring/PersistenceConfigHibernate3.java
@@ -1,81 +1,81 @@
-package org.baeldung.spring;
-
-import java.util.Properties;
-
-import javax.sql.DataSource;
-
-import org.apache.tomcat.dbcp.dbcp2.BasicDataSource;
-import org.hibernate.SessionFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.ComponentScan;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.PropertySource;
-import org.springframework.core.env.Environment;
-import org.springframework.core.io.ClassPathResource;
-import org.springframework.core.io.Resource;
-import org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor;
-import org.springframework.orm.hibernate3.HibernateTransactionManager;
-import org.springframework.orm.hibernate3.LocalSessionFactoryBean;
-import org.springframework.transaction.annotation.EnableTransactionManagement;
-
-import com.google.common.base.Preconditions;
-
-@Configuration
-@EnableTransactionManagement
-@PropertySource({ "classpath:persistence-h2.properties" })
-@ComponentScan({ "org.baeldung.persistence.dao", "org.baeldung.persistence.service" })
-public class PersistenceConfigHibernate3 {
-
- @Autowired
- private Environment env;
-
- public PersistenceConfigHibernate3() {
- super();
- }
-
- @Bean
- public LocalSessionFactoryBean sessionFactory() {
- final LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
- Resource config = new ClassPathResource("exceptionDemo.cfg.xml");
- sessionFactory.setDataSource(dataSource());
- sessionFactory.setConfigLocation(config);
- sessionFactory.setHibernateProperties(hibernateProperties());
-
- return sessionFactory;
- }
-
- @Bean
- public DataSource dataSource() {
- final BasicDataSource dataSource = new BasicDataSource();
- dataSource.setDriverClassName(Preconditions.checkNotNull(env.getProperty("jdbc.driverClassName")));
- dataSource.setUrl(Preconditions.checkNotNull(env.getProperty("jdbc.url")));
- dataSource.setUsername(Preconditions.checkNotNull(env.getProperty("jdbc.user")));
- dataSource.setPassword(Preconditions.checkNotNull(env.getProperty("jdbc.pass")));
-
- return dataSource;
- }
-
- @Bean
- @Autowired
- public HibernateTransactionManager transactionManager(final SessionFactory sessionFactory) {
- final HibernateTransactionManager txManager = new HibernateTransactionManager();
- txManager.setSessionFactory(sessionFactory);
-
- return txManager;
- }
-
- @Bean
- public PersistenceExceptionTranslationPostProcessor exceptionTranslation() {
- return new PersistenceExceptionTranslationPostProcessor();
- }
-
- final Properties hibernateProperties() {
- final Properties hibernateProperties = new Properties();
- hibernateProperties.setProperty("hibernate.hbm2ddl.auto", env.getProperty("hibernate.hbm2ddl.auto"));
- hibernateProperties.setProperty("hibernate.dialect", env.getProperty("hibernate.dialect"));
- // hibernateProperties.setProperty("hibernate.globally_quoted_identifiers", "true");
- return hibernateProperties;
- }
-
-}
+package org.baeldung.spring;
+
+import java.util.Properties;
+
+import javax.sql.DataSource;
+
+import org.apache.tomcat.dbcp.dbcp2.BasicDataSource;
+import org.hibernate.SessionFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.PropertySource;
+import org.springframework.core.env.Environment;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.core.io.Resource;
+import org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor;
+import org.springframework.orm.hibernate3.HibernateTransactionManager;
+import org.springframework.orm.hibernate3.LocalSessionFactoryBean;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+
+import com.google.common.base.Preconditions;
+
+@Configuration
+@EnableTransactionManagement
+@PropertySource({ "classpath:persistence-h2.properties" })
+@ComponentScan({ "org.baeldung.persistence.dao", "org.baeldung.persistence.service" })
+public class PersistenceConfigHibernate3 {
+
+ @Autowired
+ private Environment env;
+
+ public PersistenceConfigHibernate3() {
+ super();
+ }
+
+ @Bean
+ public LocalSessionFactoryBean sessionFactory() {
+ final LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
+ Resource config = new ClassPathResource("exceptionDemo.cfg.xml");
+ sessionFactory.setDataSource(dataSource());
+ sessionFactory.setConfigLocation(config);
+ sessionFactory.setHibernateProperties(hibernateProperties());
+
+ return sessionFactory;
+ }
+
+ @Bean
+ public DataSource dataSource() {
+ final BasicDataSource dataSource = new BasicDataSource();
+ dataSource.setDriverClassName(Preconditions.checkNotNull(env.getProperty("jdbc.driverClassName")));
+ dataSource.setUrl(Preconditions.checkNotNull(env.getProperty("jdbc.url")));
+ dataSource.setUsername(Preconditions.checkNotNull(env.getProperty("jdbc.user")));
+ dataSource.setPassword(Preconditions.checkNotNull(env.getProperty("jdbc.pass")));
+
+ return dataSource;
+ }
+
+ @Bean
+ @Autowired
+ public HibernateTransactionManager transactionManager(final SessionFactory sessionFactory) {
+ final HibernateTransactionManager txManager = new HibernateTransactionManager();
+ txManager.setSessionFactory(sessionFactory);
+
+ return txManager;
+ }
+
+ @Bean
+ public PersistenceExceptionTranslationPostProcessor exceptionTranslation() {
+ return new PersistenceExceptionTranslationPostProcessor();
+ }
+
+ final Properties hibernateProperties() {
+ final Properties hibernateProperties = new Properties();
+ hibernateProperties.setProperty("hibernate.hbm2ddl.auto", env.getProperty("hibernate.hbm2ddl.auto"));
+ hibernateProperties.setProperty("hibernate.dialect", env.getProperty("hibernate.dialect"));
+ // hibernateProperties.setProperty("hibernate.globally_quoted_identifiers", "true");
+ return hibernateProperties;
+ }
+
+}
diff --git a/persistence-modules/spring-hibernate3/src/main/resources/logback.xml b/persistence-modules/spring-hibernate3/src/main/resources/logback.xml
new file mode 100644
index 0000000000..7d900d8ea8
--- /dev/null
+++ b/persistence-modules/spring-hibernate3/src/main/resources/logback.xml
@@ -0,0 +1,13 @@
+
+
+
+
+ %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen1MainIntegrationTest.java b/persistence-modules/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen1MainIntegrationTest.java
similarity index 97%
rename from spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen1MainIntegrationTest.java
rename to persistence-modules/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen1MainIntegrationTest.java
index d53c4445a8..bbbf074c1a 100644
--- a/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen1MainIntegrationTest.java
+++ b/persistence-modules/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen1MainIntegrationTest.java
@@ -1,43 +1,43 @@
-package org.baeldung.persistence.service;
-
-import java.util.List;
-
-import org.baeldung.persistence.model.Event;
-import org.baeldung.spring.PersistenceConfigHibernate3;
-import org.hamcrest.core.IsInstanceOf;
-import org.hibernate.HibernateException;
-import org.junit.Ignore;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.test.context.support.AnnotationConfigContextLoader;
-
-@RunWith(SpringJUnit4ClassRunner.class)
-@ContextConfiguration(classes = { PersistenceConfigHibernate3.class }, loader = AnnotationConfigContextLoader.class)
-public class HibernateExceptionScen1MainIntegrationTest {
-
- @Autowired
- EventService service;
-
- @Rule
- public ExpectedException expectedEx = ExpectedException.none();
-
- @Test
- public final void whenEntityIsCreated_thenNoExceptions() {
- service.create(new Event("from LocalSessionFactoryBean"));
- }
-
- @Test
- @Ignore
- public final void whenNoTransBoundToSession_thenException() {
- expectedEx.expectCause(IsInstanceOf.instanceOf(HibernateException.class));
- expectedEx.expectMessage("No Hibernate Session bound to thread, "
- + "and configuration does not allow creation "
- + "of non-transactional one here");
- service.create(new Event("from LocalSessionFactoryBean"));
- }
-}
+package org.baeldung.persistence.service;
+
+import java.util.List;
+
+import org.baeldung.persistence.model.Event;
+import org.baeldung.spring.PersistenceConfigHibernate3;
+import org.hamcrest.core.IsInstanceOf;
+import org.hibernate.HibernateException;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.test.context.support.AnnotationConfigContextLoader;
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration(classes = { PersistenceConfigHibernate3.class }, loader = AnnotationConfigContextLoader.class)
+public class HibernateExceptionScen1MainIntegrationTest {
+
+ @Autowired
+ EventService service;
+
+ @Rule
+ public ExpectedException expectedEx = ExpectedException.none();
+
+ @Test
+ public final void whenEntityIsCreated_thenNoExceptions() {
+ service.create(new Event("from LocalSessionFactoryBean"));
+ }
+
+ @Test
+ @Ignore
+ public final void whenNoTransBoundToSession_thenException() {
+ expectedEx.expectCause(IsInstanceOf.instanceOf(HibernateException.class));
+ expectedEx.expectMessage("No Hibernate Session bound to thread, "
+ + "and configuration does not allow creation "
+ + "of non-transactional one here");
+ service.create(new Event("from LocalSessionFactoryBean"));
+ }
+}
diff --git a/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen2MainIntegrationTest.java b/persistence-modules/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen2MainIntegrationTest.java
similarity index 97%
rename from spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen2MainIntegrationTest.java
rename to persistence-modules/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen2MainIntegrationTest.java
index 84cafe0536..d8810f0e90 100644
--- a/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen2MainIntegrationTest.java
+++ b/persistence-modules/spring-hibernate3/src/test/java/org/baeldung/persistence/service/HibernateExceptionScen2MainIntegrationTest.java
@@ -1,45 +1,45 @@
-package org.baeldung.persistence.service;
-
-import java.util.List;
-
-import org.baeldung.persistence.model.Event;
-import org.baeldung.spring.PersistenceConfig;
-import org.hamcrest.core.IsInstanceOf;
-import org.hibernate.HibernateException;
-import org.junit.Ignore;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.test.context.support.AnnotationConfigContextLoader;
-
-
-@RunWith(SpringJUnit4ClassRunner.class)
-@ContextConfiguration(classes = { PersistenceConfig.class }, loader = AnnotationConfigContextLoader.class)
-public class HibernateExceptionScen2MainIntegrationTest {
-
- @Autowired
- EventService service;
-
- @Rule
- public ExpectedException expectedEx = ExpectedException.none();
-
- @Test
- public final void whenEntityIsCreated_thenNoExceptions() {
- service.create(new Event("from AnnotationSessionFactoryBean"));
- }
-
- @Test
- @Ignore
- public final void whenNoTransBoundToSession_thenException() {
- expectedEx.expectCause(IsInstanceOf.instanceOf(HibernateException.class));
- expectedEx.expectMessage("No Hibernate Session bound to thread, "
- + "and configuration does not allow creation "
- + "of non-transactional one here");
- service.create(new Event("from AnnotationSessionFactoryBean"));
- }
-
-}
+package org.baeldung.persistence.service;
+
+import java.util.List;
+
+import org.baeldung.persistence.model.Event;
+import org.baeldung.spring.PersistenceConfig;
+import org.hamcrest.core.IsInstanceOf;
+import org.hibernate.HibernateException;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.test.context.support.AnnotationConfigContextLoader;
+
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration(classes = { PersistenceConfig.class }, loader = AnnotationConfigContextLoader.class)
+public class HibernateExceptionScen2MainIntegrationTest {
+
+ @Autowired
+ EventService service;
+
+ @Rule
+ public ExpectedException expectedEx = ExpectedException.none();
+
+ @Test
+ public final void whenEntityIsCreated_thenNoExceptions() {
+ service.create(new Event("from AnnotationSessionFactoryBean"));
+ }
+
+ @Test
+ @Ignore
+ public final void whenNoTransBoundToSession_thenException() {
+ expectedEx.expectCause(IsInstanceOf.instanceOf(HibernateException.class));
+ expectedEx.expectMessage("No Hibernate Session bound to thread, "
+ + "and configuration does not allow creation "
+ + "of non-transactional one here");
+ service.create(new Event("from AnnotationSessionFactoryBean"));
+ }
+
+}
diff --git a/spring-hibernate4/.gitignore b/persistence-modules/spring-hibernate4/.gitignore
similarity index 100%
rename from spring-hibernate4/.gitignore
rename to persistence-modules/spring-hibernate4/.gitignore
diff --git a/spring-hibernate4/README.md b/persistence-modules/spring-hibernate4/README.md
similarity index 100%
rename from spring-hibernate4/README.md
rename to persistence-modules/spring-hibernate4/README.md
diff --git a/spring-hibernate4/pom.xml b/persistence-modules/spring-hibernate4/pom.xml
similarity index 99%
rename from spring-hibernate4/pom.xml
rename to persistence-modules/spring-hibernate4/pom.xml
index 505a218a94..fad84870df 100644
--- a/spring-hibernate4/pom.xml
+++ b/persistence-modules/spring-hibernate4/pom.xml
@@ -10,6 +10,7 @@
com.baeldung
parent-modules
1.0.0-SNAPSHOT
+ ../../
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/criteria/model/Item.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/criteria/model/Item.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/criteria/model/Item.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/criteria/model/Item.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/OrderDetail.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/OrderDetail.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/OrderDetail.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/OrderDetail.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserEager.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserEager.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserEager.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserEager.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserLazy.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserLazy.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserLazy.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/model/UserLazy.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/util/HibernateUtil.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/util/HibernateUtil.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/util/HibernateUtil.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/util/HibernateUtil.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/view/FetchingAppView.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/view/FetchingAppView.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/view/FetchingAppView.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/fetching/view/FetchingAppView.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/config/HibernateAnnotationUtil.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/config/HibernateAnnotationUtil.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/config/HibernateAnnotationUtil.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/config/HibernateAnnotationUtil.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMain.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMain.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMain.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMain.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Cart.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Cart.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Cart.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Cart.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Items.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Items.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Items.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/hibernate/oneToMany/model/Items.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarAuditableDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarAuditableDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarAuditableDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarAuditableDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarCrudRepository.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarCrudRepository.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarCrudRepository.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarCrudRepository.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IBarDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IChildDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IChildDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IChildDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IChildDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooAuditableDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooAuditableDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooAuditableDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooAuditableDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IFooDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IParentDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IParentDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IParentDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/IParentDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateAuditableDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateAuditableDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateAuditableDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateAuditableDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractHibernateDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractJpaDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractJpaDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractJpaDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/AbstractJpaDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/GenericHibernateDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/GenericHibernateDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/GenericHibernateDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/GenericHibernateDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IAuditOperations.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IAuditOperations.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IAuditOperations.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IAuditOperations.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IGenericDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IGenericDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IGenericDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IGenericDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IOperations.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IOperations.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IOperations.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/common/IOperations.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarAuditableDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarAuditableDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarAuditableDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarAuditableDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarJpaDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarJpaDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarJpaDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/BarJpaDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ChildDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ChildDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ChildDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ChildDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooAuditableDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooAuditableDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooAuditableDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooAuditableDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/FooDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ParentDao.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ParentDao.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ParentDao.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/dao/impl/ParentDao.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Bar.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Bar.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/model/Bar.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Bar.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Child.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Child.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/model/Child.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Child.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Foo.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Foo.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/model/Foo.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Foo.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Parent.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Parent.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/model/Parent.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Parent.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Person.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Person.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/model/Person.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/model/Person.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarAuditableService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarAuditableService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarAuditableService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarAuditableService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IBarService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IChildService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IChildService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/IChildService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IChildService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooAuditableService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooAuditableService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooAuditableService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooAuditableService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IFooService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IParentService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IParentService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/IParentService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/IParentService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateAuditableService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateAuditableService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateAuditableService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateAuditableService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractHibernateService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractJpaService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractJpaService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractJpaService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractJpaService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractSpringDataJpaService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractSpringDataJpaService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractSpringDataJpaService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/common/AbstractSpringDataJpaService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarAuditableService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarAuditableService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarAuditableService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarAuditableService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarJpaService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarJpaService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarJpaService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarJpaService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarSpringDataJpaService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarSpringDataJpaService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarSpringDataJpaService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/BarSpringDataJpaService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ChildService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ChildService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ChildService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ChildService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooAuditableService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooAuditableService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooAuditableService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooAuditableService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/FooService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ParentService.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ParentService.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ParentService.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/persistence/service/impl/ParentService.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceConfig.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceConfig.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceConfig.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceConfig.java
diff --git a/spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceXmlConfig.java b/persistence-modules/spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceXmlConfig.java
similarity index 100%
rename from spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceXmlConfig.java
rename to persistence-modules/spring-hibernate4/src/main/java/com/baeldung/spring/PersistenceXmlConfig.java
diff --git a/spring-hibernate4/src/main/resources/fetching.cfg.xml b/persistence-modules/spring-hibernate4/src/main/resources/fetching.cfg.xml
similarity index 100%
rename from spring-hibernate4/src/main/resources/fetching.cfg.xml
rename to persistence-modules/spring-hibernate4/src/main/resources/fetching.cfg.xml
diff --git a/spring-hibernate4/src/main/resources/fetchingLazy.cfg.xml b/persistence-modules/spring-hibernate4/src/main/resources/fetchingLazy.cfg.xml
similarity index 100%
rename from spring-hibernate4/src/main/resources/fetchingLazy.cfg.xml
rename to persistence-modules/spring-hibernate4/src/main/resources/fetchingLazy.cfg.xml
diff --git a/spring-hibernate4/src/main/resources/fetching_create_queries.sql b/persistence-modules/spring-hibernate4/src/main/resources/fetching_create_queries.sql
similarity index 100%
rename from spring-hibernate4/src/main/resources/fetching_create_queries.sql
rename to persistence-modules/spring-hibernate4/src/main/resources/fetching_create_queries.sql
diff --git a/spring-hibernate4/src/main/resources/hibernate-annotation.cfg.xml b/persistence-modules/spring-hibernate4/src/main/resources/hibernate-annotation.cfg.xml
similarity index 100%
rename from spring-hibernate4/src/main/resources/hibernate-annotation.cfg.xml
rename to persistence-modules/spring-hibernate4/src/main/resources/hibernate-annotation.cfg.xml
diff --git a/spring-hibernate4/src/main/resources/hibernate4Config.xml b/persistence-modules/spring-hibernate4/src/main/resources/hibernate4Config.xml
similarity index 100%
rename from spring-hibernate4/src/main/resources/hibernate4Config.xml
rename to persistence-modules/spring-hibernate4/src/main/resources/hibernate4Config.xml
diff --git a/spring-hibernate4/src/main/resources/immutable.cfg.xml b/persistence-modules/spring-hibernate4/src/main/resources/immutable.cfg.xml
similarity index 100%
rename from spring-hibernate4/src/main/resources/immutable.cfg.xml
rename to persistence-modules/spring-hibernate4/src/main/resources/immutable.cfg.xml
diff --git a/spring-hibernate4/src/main/resources/insert_statements.sql b/persistence-modules/spring-hibernate4/src/main/resources/insert_statements.sql
similarity index 100%
rename from spring-hibernate4/src/main/resources/insert_statements.sql
rename to persistence-modules/spring-hibernate4/src/main/resources/insert_statements.sql
diff --git a/spring-hibernate4/src/main/resources/logback.xml b/persistence-modules/spring-hibernate4/src/main/resources/logback.xml
similarity index 100%
rename from spring-hibernate4/src/main/resources/logback.xml
rename to persistence-modules/spring-hibernate4/src/main/resources/logback.xml
diff --git a/spring-hibernate4/src/main/resources/one_to_many.sql b/persistence-modules/spring-hibernate4/src/main/resources/one_to_many.sql
similarity index 100%
rename from spring-hibernate4/src/main/resources/one_to_many.sql
rename to persistence-modules/spring-hibernate4/src/main/resources/one_to_many.sql
diff --git a/spring-hibernate4/src/main/resources/persistence-mysql.properties b/persistence-modules/spring-hibernate4/src/main/resources/persistence-mysql.properties
similarity index 100%
rename from spring-hibernate4/src/main/resources/persistence-mysql.properties
rename to persistence-modules/spring-hibernate4/src/main/resources/persistence-mysql.properties
diff --git a/spring-hibernate4/src/main/resources/stored_procedure.sql b/persistence-modules/spring-hibernate4/src/main/resources/stored_procedure.sql
similarity index 93%
rename from spring-hibernate4/src/main/resources/stored_procedure.sql
rename to persistence-modules/spring-hibernate4/src/main/resources/stored_procedure.sql
index 8e1bdf57dd..9cedb75c37 100644
--- a/spring-hibernate4/src/main/resources/stored_procedure.sql
+++ b/persistence-modules/spring-hibernate4/src/main/resources/stored_procedure.sql
@@ -1,20 +1,20 @@
-DELIMITER //
- CREATE PROCEDURE GetFoosByName(IN fooName VARCHAR(255))
- LANGUAGE SQL
- DETERMINISTIC
- SQL SECURITY DEFINER
- BEGIN
- SELECT * FROM foo WHERE name = fooName;
- END //
-DELIMITER ;
-
-
-DELIMITER //
- CREATE PROCEDURE GetAllFoos()
- LANGUAGE SQL
- DETERMINISTIC
- SQL SECURITY DEFINER
- BEGIN
- SELECT * FROM foo;
- END //
+DELIMITER //
+ CREATE PROCEDURE GetFoosByName(IN fooName VARCHAR(255))
+ LANGUAGE SQL
+ DETERMINISTIC
+ SQL SECURITY DEFINER
+ BEGIN
+ SELECT * FROM foo WHERE name = fooName;
+ END //
+DELIMITER ;
+
+
+DELIMITER //
+ CREATE PROCEDURE GetAllFoos()
+ LANGUAGE SQL
+ DETERMINISTIC
+ SQL SECURITY DEFINER
+ BEGIN
+ SELECT * FROM foo;
+ END //
DELIMITER ;
\ No newline at end of file
diff --git a/spring-hibernate4/src/main/resources/webSecurityConfig.xml b/persistence-modules/spring-hibernate4/src/main/resources/webSecurityConfig.xml
similarity index 100%
rename from spring-hibernate4/src/main/resources/webSecurityConfig.xml
rename to persistence-modules/spring-hibernate4/src/main/resources/webSecurityConfig.xml
diff --git a/spring-hibernate4/src/test/java/com/baeldung/hibernate/fetching/HibernateFetchingIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/hibernate/fetching/HibernateFetchingIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/hibernate/fetching/HibernateFetchingIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/hibernate/fetching/HibernateFetchingIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMainIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMainIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMainIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/hibernate/oneToMany/main/HibernateOneToManyAnnotationMainIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/IntegrationTestSuite.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/IntegrationTestSuite.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/IntegrationTestSuite.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/IntegrationTestSuite.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/AuditTestSuite.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/AuditTestSuite.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/audit/AuditTestSuite.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/AuditTestSuite.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/EnversFooBarAuditIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/EnversFooBarAuditIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/audit/EnversFooBarAuditIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/EnversFooBarAuditIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/JPABarAuditIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/JPABarAuditIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/audit/JPABarAuditIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/JPABarAuditIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/SpringDataJPABarAuditIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/SpringDataJPABarAuditIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/audit/SpringDataJPABarAuditIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/audit/SpringDataJPABarAuditIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooFixtures.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooFixtures.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooFixtures.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooFixtures.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooPaginationPersistenceIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooPaginationPersistenceIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooPaginationPersistenceIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooPaginationPersistenceIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooSortingPersistenceIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooSortingPersistenceIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooSortingPersistenceIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/hibernate/FooSortingPersistenceIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/save/SaveMethodsIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/save/SaveMethodsIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/save/SaveMethodsIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/save/SaveMethodsIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServiceBasicPersistenceIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServiceBasicPersistenceIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServiceBasicPersistenceIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServiceBasicPersistenceIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServicePersistenceIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServicePersistenceIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServicePersistenceIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooServicePersistenceIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooStoredProceduresLiveTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooStoredProceduresLiveTest.java
similarity index 97%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooStoredProceduresLiveTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooStoredProceduresLiveTest.java
index 9ec04d297c..d9353f1ad1 100644
--- a/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooStoredProceduresLiveTest.java
+++ b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/FooStoredProceduresLiveTest.java
@@ -1,121 +1,121 @@
-package com.baeldung.persistence.service;
-
-import java.util.List;
-
-import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic;
-import static org.junit.Assert.assertEquals;
-
-import org.hibernate.Query;
-import org.hibernate.Session;
-import org.hibernate.SessionFactory;
-import org.hibernate.exception.SQLGrammarException;
-import org.junit.After;
-import org.junit.Assume;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.test.context.support.AnnotationConfigContextLoader;
-
-import com.baeldung.persistence.model.Foo;
-import com.baeldung.spring.PersistenceConfig;
-
-@RunWith(SpringJUnit4ClassRunner.class)
-@ContextConfiguration(classes = { PersistenceConfig.class }, loader = AnnotationConfigContextLoader.class)
-public class FooStoredProceduresLiveTest {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(FooStoredProceduresLiveTest.class);
-
- @Autowired
- private SessionFactory sessionFactory;
-
- @Autowired
- private IFooService fooService;
-
- private Session session;
-
- @Before
- public final void before() {
- session = sessionFactory.openSession();
- Assume.assumeTrue(getAllFoosExists());
- Assume.assumeTrue(getFoosByNameExists());
- }
-
- private boolean getFoosByNameExists() {
- try {
- Query sqlQuery = session.createSQLQuery("CALL GetAllFoos()").addEntity(Foo.class);
- sqlQuery.list();
- return true;
- } catch (SQLGrammarException e) {
- LOGGER.error("WARNING : GetFoosByName() Procedure is may be missing ", e);
- return false;
- }
- }
-
- private boolean getAllFoosExists() {
- try {
- Query sqlQuery = session.createSQLQuery("CALL GetAllFoos()").addEntity(Foo.class);
- sqlQuery.list();
- return true;
- } catch (SQLGrammarException e) {
- LOGGER.error("WARNING : GetAllFoos() Procedure is may be missing ", e);
- return false;
- }
- }
-
- @After
- public final void after() {
- session.close();
- }
-
- @Test
- public final void getAllFoosUsingStoredProcedures() {
-
- fooService.create(new Foo(randomAlphabetic(6)));
-
- // Stored procedure getAllFoos using createSQLQuery
- Query sqlQuery = session.createSQLQuery("CALL GetAllFoos()").addEntity(Foo.class);
- @SuppressWarnings("unchecked")
- List allFoos = sqlQuery.list();
- for (Foo foo : allFoos) {
- LOGGER.info("getAllFoos() SQL Query result : {}", foo.getName());
- }
- assertEquals(allFoos.size(), fooService.findAll().size());
-
- // Stored procedure getAllFoos using a Named Query
- Query namedQuery = session.getNamedQuery("callGetAllFoos");
- @SuppressWarnings("unchecked")
- List allFoos2 = namedQuery.list();
- for (Foo foo : allFoos2) {
- LOGGER.info("getAllFoos() NamedQuery result : {}", foo.getName());
- }
- assertEquals(allFoos2.size(), fooService.findAll().size());
- }
-
- @Test
- public final void getFoosByNameUsingStoredProcedures() {
-
- fooService.create(new Foo("NewFooName"));
-
- // Stored procedure getFoosByName using createSQLQuery()
- Query sqlQuery = session.createSQLQuery("CALL GetFoosByName(:fooName)").addEntity(Foo.class).setParameter("fooName", "NewFooName");
- @SuppressWarnings("unchecked")
- List allFoosByName = sqlQuery.list();
- for (Foo foo : allFoosByName) {
- LOGGER.info("getFoosByName() using SQL Query : found => {}", foo.toString());
- }
-
- // Stored procedure getFoosByName using getNamedQuery()
- Query namedQuery = session.getNamedQuery("callGetFoosByName").setParameter("fooName", "NewFooName");
- @SuppressWarnings("unchecked")
- List allFoosByName2 = namedQuery.list();
- for (Foo foo : allFoosByName2) {
- LOGGER.info("getFoosByName() using Native Query : found => {}", foo.toString());
- }
-
- }
-}
+package com.baeldung.persistence.service;
+
+import java.util.List;
+
+import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic;
+import static org.junit.Assert.assertEquals;
+
+import org.hibernate.Query;
+import org.hibernate.Session;
+import org.hibernate.SessionFactory;
+import org.hibernate.exception.SQLGrammarException;
+import org.junit.After;
+import org.junit.Assume;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.test.context.support.AnnotationConfigContextLoader;
+
+import com.baeldung.persistence.model.Foo;
+import com.baeldung.spring.PersistenceConfig;
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration(classes = { PersistenceConfig.class }, loader = AnnotationConfigContextLoader.class)
+public class FooStoredProceduresLiveTest {
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(FooStoredProceduresLiveTest.class);
+
+ @Autowired
+ private SessionFactory sessionFactory;
+
+ @Autowired
+ private IFooService fooService;
+
+ private Session session;
+
+ @Before
+ public final void before() {
+ session = sessionFactory.openSession();
+ Assume.assumeTrue(getAllFoosExists());
+ Assume.assumeTrue(getFoosByNameExists());
+ }
+
+ private boolean getFoosByNameExists() {
+ try {
+ Query sqlQuery = session.createSQLQuery("CALL GetAllFoos()").addEntity(Foo.class);
+ sqlQuery.list();
+ return true;
+ } catch (SQLGrammarException e) {
+ LOGGER.error("WARNING : GetFoosByName() Procedure is may be missing ", e);
+ return false;
+ }
+ }
+
+ private boolean getAllFoosExists() {
+ try {
+ Query sqlQuery = session.createSQLQuery("CALL GetAllFoos()").addEntity(Foo.class);
+ sqlQuery.list();
+ return true;
+ } catch (SQLGrammarException e) {
+ LOGGER.error("WARNING : GetAllFoos() Procedure is may be missing ", e);
+ return false;
+ }
+ }
+
+ @After
+ public final void after() {
+ session.close();
+ }
+
+ @Test
+ public final void getAllFoosUsingStoredProcedures() {
+
+ fooService.create(new Foo(randomAlphabetic(6)));
+
+ // Stored procedure getAllFoos using createSQLQuery
+ Query sqlQuery = session.createSQLQuery("CALL GetAllFoos()").addEntity(Foo.class);
+ @SuppressWarnings("unchecked")
+ List allFoos = sqlQuery.list();
+ for (Foo foo : allFoos) {
+ LOGGER.info("getAllFoos() SQL Query result : {}", foo.getName());
+ }
+ assertEquals(allFoos.size(), fooService.findAll().size());
+
+ // Stored procedure getAllFoos using a Named Query
+ Query namedQuery = session.getNamedQuery("callGetAllFoos");
+ @SuppressWarnings("unchecked")
+ List allFoos2 = namedQuery.list();
+ for (Foo foo : allFoos2) {
+ LOGGER.info("getAllFoos() NamedQuery result : {}", foo.getName());
+ }
+ assertEquals(allFoos2.size(), fooService.findAll().size());
+ }
+
+ @Test
+ public final void getFoosByNameUsingStoredProcedures() {
+
+ fooService.create(new Foo("NewFooName"));
+
+ // Stored procedure getFoosByName using createSQLQuery()
+ Query sqlQuery = session.createSQLQuery("CALL GetFoosByName(:fooName)").addEntity(Foo.class).setParameter("fooName", "NewFooName");
+ @SuppressWarnings("unchecked")
+ List allFoosByName = sqlQuery.list();
+ for (Foo foo : allFoosByName) {
+ LOGGER.info("getFoosByName() using SQL Query : found => {}", foo.toString());
+ }
+
+ // Stored procedure getFoosByName using getNamedQuery()
+ Query namedQuery = session.getNamedQuery("callGetFoosByName").setParameter("fooName", "NewFooName");
+ @SuppressWarnings("unchecked")
+ List allFoosByName2 = namedQuery.list();
+ for (Foo foo : allFoosByName2) {
+ LOGGER.info("getFoosByName() using Native Query : found => {}", foo.toString());
+ }
+
+ }
+}
diff --git a/spring-hibernate4/src/test/java/com/baeldung/persistence/service/ParentServicePersistenceIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/ParentServicePersistenceIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/persistence/service/ParentServicePersistenceIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/persistence/service/ParentServicePersistenceIntegrationTest.java
diff --git a/spring-hibernate4/src/test/java/com/baeldung/spring/config/PersistenceTestConfig.java b/persistence-modules/spring-hibernate4/src/test/java/com/baeldung/spring/config/PersistenceTestConfig.java
similarity index 100%
rename from spring-hibernate4/src/test/java/com/baeldung/spring/config/PersistenceTestConfig.java
rename to persistence-modules/spring-hibernate4/src/test/java/com/baeldung/spring/config/PersistenceTestConfig.java
diff --git a/spring-hibernate4/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/persistence-modules/spring-hibernate4/src/test/java/org/baeldung/SpringContextIntegrationTest.java
similarity index 100%
rename from spring-hibernate4/src/test/java/org/baeldung/SpringContextIntegrationTest.java
rename to persistence-modules/spring-hibernate4/src/test/java/org/baeldung/SpringContextIntegrationTest.java
diff --git a/spring-hibernate4/src/test/resources/.gitignore b/persistence-modules/spring-hibernate4/src/test/resources/.gitignore
similarity index 100%
rename from spring-hibernate4/src/test/resources/.gitignore
rename to persistence-modules/spring-hibernate4/src/test/resources/.gitignore
diff --git a/spring-hibernate4/src/test/resources/fetching.cfg.xml b/persistence-modules/spring-hibernate4/src/test/resources/fetching.cfg.xml
similarity index 100%
rename from spring-hibernate4/src/test/resources/fetching.cfg.xml
rename to persistence-modules/spring-hibernate4/src/test/resources/fetching.cfg.xml
diff --git a/spring-hibernate4/src/test/resources/fetchingLazy.cfg.xml b/persistence-modules/spring-hibernate4/src/test/resources/fetchingLazy.cfg.xml
similarity index 100%
rename from spring-hibernate4/src/test/resources/fetchingLazy.cfg.xml
rename to persistence-modules/spring-hibernate4/src/test/resources/fetchingLazy.cfg.xml
diff --git a/spring-hibernate4/src/test/resources/persistence-h2.properties b/persistence-modules/spring-hibernate4/src/test/resources/persistence-h2.properties
similarity index 100%
rename from spring-hibernate4/src/test/resources/persistence-h2.properties
rename to persistence-modules/spring-hibernate4/src/test/resources/persistence-h2.properties
diff --git a/pom.xml b/pom.xml
index a0c54f4b8a..302530fd24 100644
--- a/pom.xml
+++ b/pom.xml
@@ -354,17 +354,19 @@
core-java
core-java-collections
+ java-collections-conversions
+ java-collections-maps
core-java-io
core-java-8
java-streams
- core-java-persistence
+ persistence-modules/core-java-persistence
core-kotlin
kotlin-libraries
core-groovy
core-java-concurrency
core-java-concurrency-collections
couchbase
- deltaspike
+ persistence-modules/deltaspike
dozer
ethereum
ejb
@@ -392,7 +394,7 @@
hystrix
image-processing
immutables
- influxdb
+ persistence-modules/influxdb
jackson
persistence-modules/java-cassandra
vavr
@@ -436,7 +438,7 @@
mustache
mvn-wrapper
noexception
- orientdb
+ persistence-modules/orientdb
osgi
orika
patterns
@@ -477,26 +479,26 @@
spring-boot-admin
spring-boot-camel
spring-boot-ops
- spring-boot-persistence
+ persistence-modules/spring-boot-persistence
spring-boot-security
spring-boot-mvc
spring-boot-vue
spring-boot-logging-log4j2
+ spring-boot-disable-console-logging
spring-cloud-data-flow
spring-cloud
spring-cloud-bus
spring-core
spring-cucumber
spring-ejb
- spring-ejb/spring-ejb-client
spring-aop
persistence-modules/spring-data-cassandra
spring-data-couchbase-2
persistence-modules/spring-data-dynamodb
- spring-data-elasticsearch
- spring-data-jpa
- spring-data-keyvalue
- spring-data-mongodb
+ persistence-modules/spring-data-elasticsearch
+ persistence-modules/spring-data-jpa
+ persistence-modules/spring-data-keyvalue
+ persistence-modules/spring-data-mongodb
persistence-modules/spring-data-neo4j
persistence-modules/spring-data-redis
spring-data-rest
@@ -505,7 +507,7 @@
spring-exceptions
spring-freemarker
persistence-modules/spring-hibernate-3
- spring-hibernate4
+ persistence-modules/spring-hibernate4
persistence-modules/spring-hibernate-5
persistence-modules/spring-data-eclipselink
spring-integration
@@ -805,13 +807,13 @@
spring-cloud/spring-cloud-data-flow/time-processor
spring-cloud/spring-cloud-data-flow/time-source
spring-cucumber
- spring-data-keyvalue
+ persistence-modules/spring-data-keyvalue
spring-data-rest
spring-dispatcher-servlet
spring-drools
spring-freemarker
- spring-hibernate-3
- spring-hibernate4
+ persistence-modules/spring-hibernate-3
+ persistence-modules/spring-hibernate4
spring-integration
spring-jenkins-pipeline
spring-jersey
@@ -940,7 +942,7 @@
azure bootique cdi core-java
core-java-collections core-java-io core-java-8
core-kotlin core-groovy core-java-concurrency
- couchbase deltaspike dozer
+ couchbase persistence-modules/deltaspike dozer
ethereum ejb feign flips
geotools testing-modules/groovy-spock testing-modules/gatling
google-cloud google-web-toolkit gson
@@ -948,7 +950,7 @@
guava-modules/guava-21 guice disruptor
spring-static-resources hazelcast hbase
hibernate5 httpclient hystrix
- image-processing immutables influxdb
+ image-processing immutables persistence-modules/influxdb
jackson persistence-modules/java-cassandra
vavr java-lite java-numbers
java-rmi java-vavr-stream javax-servlets
@@ -973,7 +975,7 @@
mustache
mvn-wrapper
noexception
- orientdb
+ persistence-modules/orientdb
osgi
orika
patterns
@@ -1020,25 +1022,25 @@
spring-boot-admin
spring-boot-camel
spring-boot-ops
- spring-boot-persistence
+ persistence-modules/spring-boot-persistence
spring-boot-security
spring-boot-mvc
spring-boot-logging-log4j2
+ spring-boot-disable-console-logging
spring-cloud-data-flow
spring-cloud
spring-cloud-bus
spring-core
spring-cucumber
spring-ejb
- spring-ejb/spring-ejb-client
spring-aop
persistence-modules/spring-data-cassandra
spring-data-couchbase-2
persistence-modules/spring-data-dynamodb
- spring-data-elasticsearch
- spring-data-keyvalue
- spring-data-mongodb
- spring-data-jpa
+ persistence-modules/spring-data-elasticsearch
+ persistence-modules/spring-data-keyvalue
+ persistence-modules/spring-data-mongodb
+ persistence-modules/spring-data-jpa
persistence-modules/spring-data-neo4j
persistence-modules/spring-data-redis
spring-data-rest
@@ -1053,7 +1055,7 @@
spring-exceptions
spring-freemarker
persistence-modules/spring-hibernate-3
- spring-hibernate4
+ persistence-modules/spring-hibernate4
persistence-modules/spring-hibernate-5
persistence-modules/spring-data-eclipselink
spring-integration
@@ -1270,13 +1272,15 @@
java-strings
core-java-collections
+ java-collections-conversions
+ java-collections-maps
core-java-io
core-java-8
java-streams
core-groovy
couchbase
- deltaspike
+ persistence-modules/deltaspike
dozer
ethereum
feign
@@ -1298,7 +1302,7 @@
hystrix
image-processing
immutables
- influxdb
+ persistence-modules/influxdb
jackson
vavr
java-lite
@@ -1339,7 +1343,7 @@
mustache
mvn-wrapper
noexception
- orientdb
+ persistence-modules/orientdb
osgi
orika
patterns
@@ -1376,22 +1380,22 @@
spring-boot-bootstrap
spring-boot-admin
spring-boot-camel
- spring-boot-persistence
+ persistence-modules/spring-boot-persistence
spring-boot-security
spring-boot-mvc
spring-boot-logging-log4j2
+ spring-boot-disable-console-logging
spring-cloud-data-flow
spring-cloud
spring-cloud-bus
spring-core
spring-cucumber
spring-ejb
- spring-ejb/spring-ejb-client
spring-aop
persistence-modules/spring-data-dynamodb
- spring-data-keyvalue
- spring-data-mongodb
+ persistence-modules/spring-data-keyvalue
+ persistence-modules/spring-data-mongodb
persistence-modules/spring-data-neo4j
spring-data-rest
@@ -1506,7 +1510,7 @@
maven-archetype
apache-meecrowave
- spring-hibernate4
+ persistence-modules/spring-hibernate4
xml
vertx
metrics
@@ -1600,7 +1604,7 @@
google-web-toolkit
spring-security-mvc-custom
hibernate5
- spring-data-elasticsearch
+ persistence-modules/spring-data-elasticsearch
core-java-concurrency
core-java-concurrency-collections
diff --git a/spring-5-reactive/README.md b/spring-5-reactive/README.md
index 7977fd820f..1431554882 100644
--- a/spring-5-reactive/README.md
+++ b/spring-5-reactive/README.md
@@ -14,3 +14,4 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring
- [Spring Webflux and CORS](http://www.baeldung.com/spring-webflux-cors)
- [Handling Errors in Spring WebFlux](http://www.baeldung.com/spring-webflux-errors)
- [Server-Sent Events in Spring](https://www.baeldung.com/spring-server-sent-events)
+- [A Guide to Spring Session Reactive Support: WebSession](https://www.baeldung.com/a-guide-to-spring-session-reactive-support-websession/)
\ No newline at end of file
diff --git a/spring-5-reactive/pom.xml b/spring-5-reactive/pom.xml
index 5f455c3906..e903b57c4e 100644
--- a/spring-5-reactive/pom.xml
+++ b/spring-5-reactive/pom.xml
@@ -76,6 +76,28 @@
test
+
+
+ org.springframework.boot
+ spring-boot-starter-webflux
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+ org.springframework.boot
+ spring-boot-starter-security
+
+
+ org.springframework.session
+ spring-session-core
+
+
+ org.springframework.session
+ spring-session-data-redis
+
+
org.apache.commons
commons-collections4
diff --git a/spring-5-reactive/src/main/java/com/baeldung/websession/Application.java b/spring-5-reactive/src/main/java/com/baeldung/websession/Application.java
new file mode 100644
index 0000000000..667ef29658
--- /dev/null
+++ b/spring-5-reactive/src/main/java/com/baeldung/websession/Application.java
@@ -0,0 +1,15 @@
+package com.baeldung.websession;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.ComponentScan;
+
+@SpringBootApplication
+@ComponentScan(basePackages = {"com.baeldung"})
+public class Application {
+
+ public static void main(String[] args) {
+ SpringApplication.run(Application.class, args);
+ }
+
+}
\ No newline at end of file
diff --git a/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/RedisConfig.java b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/RedisConfig.java
new file mode 100644
index 0000000000..aa85cf9fd9
--- /dev/null
+++ b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/RedisConfig.java
@@ -0,0 +1,17 @@
+package com.baeldung.websession.configuration;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
+import org.springframework.session.data.redis.config.annotation.web.server.EnableRedisWebSession;
+
+@Configuration
+//@EnableRedisWebSession
+public class RedisConfig {
+/**
+ @Bean
+ public LettuceConnectionFactory redisConnectionFactory() {
+ return new LettuceConnectionFactory();
+ }
+*/
+}
\ No newline at end of file
diff --git a/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/SessionConfig.java b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/SessionConfig.java
new file mode 100644
index 0000000000..7cb2ff680e
--- /dev/null
+++ b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/SessionConfig.java
@@ -0,0 +1,20 @@
+package com.baeldung.websession.configuration;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.session.ReactiveMapSessionRepository;
+import org.springframework.session.ReactiveSessionRepository;
+import org.springframework.session.config.annotation.web.server.EnableSpringWebSession;
+
+import java.util.concurrent.ConcurrentHashMap;
+
+@Configuration
+@EnableSpringWebSession
+public class SessionConfig {
+
+ @Bean
+ public ReactiveSessionRepository reactiveSessionRepository() {
+ return new ReactiveMapSessionRepository(new ConcurrentHashMap<>());
+ }
+
+}
diff --git a/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/WebFluxConfig.java b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/WebFluxConfig.java
new file mode 100644
index 0000000000..964b544916
--- /dev/null
+++ b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/WebFluxConfig.java
@@ -0,0 +1,20 @@
+package com.baeldung.websession.configuration;
+
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.reactive.config.EnableWebFlux;
+import org.springframework.web.reactive.config.ResourceHandlerRegistry;
+import org.springframework.web.reactive.config.WebFluxConfigurer;
+
+@Configuration
+@EnableWebFlux
+public class WebFluxConfig implements ApplicationContextAware, WebFluxConfigurer {
+
+ private ApplicationContext context;
+
+ @Override
+ public void setApplicationContext(ApplicationContext context) {
+ this.context = context;
+ }
+}
diff --git a/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/WebFluxSecurityConfig.java b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/WebFluxSecurityConfig.java
new file mode 100644
index 0000000000..452bcac8ab
--- /dev/null
+++ b/spring-5-reactive/src/main/java/com/baeldung/websession/configuration/WebFluxSecurityConfig.java
@@ -0,0 +1,58 @@
+package com.baeldung.websession.configuration;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity;
+import org.springframework.security.config.web.server.ServerHttpSecurity;
+import org.springframework.security.core.userdetails.MapReactiveUserDetailsService;
+import org.springframework.security.core.userdetails.User;
+import org.springframework.security.core.userdetails.UserDetails;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import org.springframework.security.crypto.password.PasswordEncoder;
+import org.springframework.security.web.server.SecurityWebFilterChain;
+import org.springframework.security.web.server.context.WebSessionServerSecurityContextRepository;
+
+@Configuration
+@EnableWebFluxSecurity
+public class WebFluxSecurityConfig {
+
+ @Bean
+ public MapReactiveUserDetailsService userDetailsService() {
+ UserDetails admin = User
+ .withUsername("admin")
+ .password(encoder().encode("password"))
+ .roles("ADMIN")
+ .build();
+
+ UserDetails user = User
+ .withUsername("user")
+ .password(encoder().encode("password"))
+ .roles("USER")
+ .build();
+
+ return new MapReactiveUserDetailsService(admin, user);
+ }
+
+ @Bean
+ public SecurityWebFilterChain springSecurityFilterChain(ServerHttpSecurity http) {
+ http
+ .authorizeExchange()
+ .anyExchange().authenticated()
+ .and()
+ .httpBasic()
+ .securityContextRepository(new WebSessionServerSecurityContextRepository())
+ .and()
+ .formLogin();
+
+ http
+ .csrf().disable();
+
+ return http.build();
+
+ }
+
+ @Bean
+ public PasswordEncoder encoder() {
+ return new BCryptPasswordEncoder();
+ }
+}
diff --git a/spring-5-reactive/src/main/java/com/baeldung/websession/controller/SessionController.java b/spring-5-reactive/src/main/java/com/baeldung/websession/controller/SessionController.java
new file mode 100644
index 0000000000..b91a050322
--- /dev/null
+++ b/spring-5-reactive/src/main/java/com/baeldung/websession/controller/SessionController.java
@@ -0,0 +1,42 @@
+package com.baeldung.websession.controller;
+
+import com.baeldung.websession.transfer.CustomResponse;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.server.WebSession;
+import reactor.core.publisher.Mono;
+
+@RestController
+public class SessionController {
+
+ @GetMapping("/websession/test")
+ public Mono testWebSessionByParam(
+ @RequestParam(value = "id") int id,
+ @RequestParam(value = "note") String note,
+ WebSession session) {
+
+ session.getAttributes().put("id", id);
+ session.getAttributes().put("note", note);
+
+ CustomResponse r = new CustomResponse();
+ r.setId((int) session.getAttributes().get("id"));
+ r.setNote((String) session.getAttributes().get("note"));
+
+ return Mono.just(r);
+ }
+
+ @GetMapping("/websession")
+ public Mono getSession(WebSession session) {
+
+ session.getAttributes().putIfAbsent("id", 0);
+ session.getAttributes().putIfAbsent("note", "Howdy Cosmic Spheroid!");
+
+ CustomResponse r = new CustomResponse();
+ r.setId((int) session.getAttributes().get("id"));
+ r.setNote((String) session.getAttributes().get("note"));
+
+ return Mono.just(r);
+ }
+
+}
\ No newline at end of file
diff --git a/spring-5-reactive/src/main/java/com/baeldung/websession/transfer/CustomResponse.java b/spring-5-reactive/src/main/java/com/baeldung/websession/transfer/CustomResponse.java
new file mode 100644
index 0000000000..2d562de157
--- /dev/null
+++ b/spring-5-reactive/src/main/java/com/baeldung/websession/transfer/CustomResponse.java
@@ -0,0 +1,31 @@
+package com.baeldung.websession.transfer;
+
+public class CustomResponse {
+
+ private int id;
+ private String note;
+
+ public CustomResponse() {}
+
+ public CustomResponse(int id, String note) {
+ this.id = id;
+ this.note = note;
+ }
+
+ public int getId() {
+ return id;
+ }
+
+ public void setId(int id) {
+ this.id = id;
+ }
+
+ public String getNote() {
+ return note;
+ }
+
+ public void setNote(String note) {
+ this.note = note;
+ }
+
+}
diff --git a/spring-boot-disable-console-logging/README.md b/spring-boot-disable-console-logging/README.md
new file mode 100644
index 0000000000..3d75fddc8e
--- /dev/null
+++ b/spring-boot-disable-console-logging/README.md
@@ -0,0 +1,2 @@
+### Relevant Articles:
+- [How to Disable Console Logging in Spring Boot](https://www.baeldung.com/spring-boot-disable-console-logging)
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/pom.xml b/spring-boot-disable-console-logging/disabling-console-jul/pom.xml
similarity index 85%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/pom.xml
rename to spring-boot-disable-console-logging/disabling-console-jul/pom.xml
index c3bad74352..ceac0616e9 100644
--- a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/pom.xml
+++ b/spring-boot-disable-console-logging/disabling-console-jul/pom.xml
@@ -3,10 +3,12 @@
4.0.0
disabling-console-jul
+
+
- com.baeldung
- disabling-console-logging
- 0.0.1-SNAPSHOT
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.0.5.RELEASE
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java b/spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java
rename to spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/DisablingConsoleJulApp.java
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java b/spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java
rename to spring-boot-disable-console-logging/disabling-console-jul/src/main/java/com/baeldung/springbootlogging/disablingconsole/jul/properties/controllers/DisabledConsoleRestController.java
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/resources/application.properties b/spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/application.properties
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/resources/application.properties
rename to spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/application.properties
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/resources/logging.properties b/spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/logging.properties
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-jul/src/main/resources/logging.properties
rename to spring-boot-disable-console-logging/disabling-console-jul/src/main/resources/logging.properties
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/pom.xml b/spring-boot-disable-console-logging/disabling-console-log4j2/pom.xml
similarity index 81%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/pom.xml
rename to spring-boot-disable-console-logging/disabling-console-log4j2/pom.xml
index f9b34ec7d9..d6e9a8b5e5 100644
--- a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/pom.xml
+++ b/spring-boot-disable-console-logging/disabling-console-log4j2/pom.xml
@@ -3,10 +3,12 @@
4.0.0
disabling-console-log4j2
+
+
- com.baeldung
- disabling-console-logging
- 0.0.1-SNAPSHOT
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.0.5.RELEASE
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java b/spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java
rename to spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/DisablingConsoleLog4j2App.java
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java b/spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java
rename to spring-boot-disable-console-logging/disabling-console-log4j2/src/main/java/com/baeldung/springbootlogging/disablingconsole/log4j2/xml/controllers/DisabledConsoleRestController.java
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/src/main/resources/log4j2.xml b/spring-boot-disable-console-logging/disabling-console-log4j2/src/main/resources/log4j2.xml
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-log4j2/src/main/resources/log4j2.xml
rename to spring-boot-disable-console-logging/disabling-console-log4j2/src/main/resources/log4j2.xml
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/pom.xml b/spring-boot-disable-console-logging/disabling-console-logback/pom.xml
similarity index 61%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/pom.xml
rename to spring-boot-disable-console-logging/disabling-console-logback/pom.xml
index 6f2170390b..f18066ea03 100644
--- a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/pom.xml
+++ b/spring-boot-disable-console-logging/disabling-console-logback/pom.xml
@@ -2,8 +2,16 @@
4.0.0
com.baeldung
- disabling-console-logging
+ spring-boot-disable-console-logging
0.0.1-SNAPSHOT
disabling-console-logback
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
\ No newline at end of file
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java b/spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java
rename to spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/DisablingConsoleLogbackApp.java
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java b/spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java
rename to spring-boot-disable-console-logging/disabling-console-logback/src/main/java/com/baeldung/springbootlogging/disablingconsole/logback/xml/controllers/DisabledConsoleRestController.java
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/resources/application.properties b/spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/application.properties
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/resources/application.properties
rename to spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/application.properties
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/resources/logback-spring.xml b/spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/logback-spring.xml
similarity index 100%
rename from spring-boot-logging-log4j2/disabling-console-logging/disabling-console-logback/src/main/resources/logback-spring.xml
rename to spring-boot-disable-console-logging/disabling-console-logback/src/main/resources/logback-spring.xml
diff --git a/spring-boot-logging-log4j2/disabling-console-logging/pom.xml b/spring-boot-disable-console-logging/pom.xml
similarity index 78%
rename from spring-boot-logging-log4j2/disabling-console-logging/pom.xml
rename to spring-boot-disable-console-logging/pom.xml
index 39a4a40f12..ec84372f99 100644
--- a/spring-boot-logging-log4j2/disabling-console-logging/pom.xml
+++ b/spring-boot-disable-console-logging/pom.xml
@@ -1,14 +1,15 @@
4.0.0
- disabling-console-logging
+ spring-boot-disable-console-logging
pom
Projects for Disabling Spring Boot Console Logging tutorials
+ parent-boot-2
com.baeldung
- spring-boot-logging-log4j2
0.0.1-SNAPSHOT
+ ../parent-boot-2
diff --git a/spring-boot-logging-log4j2/README.md b/spring-boot-logging-log4j2/README.md
index 305957ed8d..7676bd1919 100644
--- a/spring-boot-logging-log4j2/README.md
+++ b/spring-boot-logging-log4j2/README.md
@@ -1,3 +1,2 @@
### Relevant Articles:
- [Logging in Spring Boot](http://www.baeldung.com/spring-boot-logging)
-- [How to Disable Console Logging in Spring Boot](https://www.baeldung.com/spring-boot-disable-console-logging)
diff --git a/spring-boot-logging-log4j2/pom.xml b/spring-boot-logging-log4j2/pom.xml
index 7caf1e8690..7220672eaf 100644
--- a/spring-boot-logging-log4j2/pom.xml
+++ b/spring-boot-logging-log4j2/pom.xml
@@ -4,41 +4,58 @@
4.0.0
spring-boot-logging-log4j2
- pom
- Projects for Spring Boot Logging tutorials
+ jar
+ Demo project for Spring Boot Logging with Log4J2
+
+
- parent-boot-2
- com.baeldung
- 0.0.1-SNAPSHOT
- ../parent-boot-2
+ spring-boot-starter-parent
+ org.springframework.boot
+ 2.0.5.RELEASE
org.springframework.boot
spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-logging
+
+
-
org.springframework.boot
spring-boot-starter-test
- test
+
+
+ org.springframework.boot
+ spring-boot-starter-log4j2
-
- spring-boot-logging-log4j2-app
- disabling-console-logging
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ 3
+ true
+
+ **/*IntegrationTest.java
+ **/*IntTest.java
+ **/*ManualTest.java
+ **/*LiveTest.java
+
+
+
+
-
+
+
+
+
diff --git a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/pom.xml b/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/pom.xml
deleted file mode 100644
index 571794167e..0000000000
--- a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/pom.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
- 4.0.0
-
- spring-boot-logging-log4j2-app
- jar
- Demo project for Spring Boot Logging with Log4J2
-
-
- spring-boot-logging-log4j2
- com.baeldung
- 0.0.1-SNAPSHOT
- ..
-
-
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.springframework.boot
- spring-boot-starter-logging
-
-
-
-
- org.springframework.boot
- spring-boot-starter-log4j2
-
-
-
diff --git a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/java/com/baeldung/springbootlogging/LoggingController.java b/spring-boot-logging-log4j2/src/main/java/com/baeldung/springbootlogging/LoggingController.java
similarity index 97%
rename from spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/java/com/baeldung/springbootlogging/LoggingController.java
rename to spring-boot-logging-log4j2/src/main/java/com/baeldung/springbootlogging/LoggingController.java
index 07763c8c3b..d462926616 100644
--- a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/java/com/baeldung/springbootlogging/LoggingController.java
+++ b/spring-boot-logging-log4j2/src/main/java/com/baeldung/springbootlogging/LoggingController.java
@@ -32,6 +32,6 @@ public class LoggingController {
loggerNative.warn("This WARN message been printed by Log4j2 without passing through SLF4J");
loggerNative.error("This ERROR message been printed by Log4j2 without passing through SLF4J");
loggerNative.fatal("This FATAL message been printed by Log4j2 without passing through SLF4J");
- return "Howdy! Check out the Logs to see the output printed directly throguh Log4j2...";
+ return "Howdy! Check out the Logs to see the output printed directly through Log4j2...";
}
}
diff --git a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/java/com/baeldung/springbootlogging/SpringBootLoggingApplication.java b/spring-boot-logging-log4j2/src/main/java/com/baeldung/springbootlogging/SpringBootLoggingApplication.java
similarity index 100%
rename from spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/java/com/baeldung/springbootlogging/SpringBootLoggingApplication.java
rename to spring-boot-logging-log4j2/src/main/java/com/baeldung/springbootlogging/SpringBootLoggingApplication.java
diff --git a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/resources/application.properties b/spring-boot-logging-log4j2/src/main/resources/application.properties
similarity index 100%
rename from spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/resources/application.properties
rename to spring-boot-logging-log4j2/src/main/resources/application.properties
diff --git a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/resources/log4j2-spring.xml b/spring-boot-logging-log4j2/src/main/resources/log4j2-spring.xml
similarity index 100%
rename from spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/main/resources/log4j2-spring.xml
rename to spring-boot-logging-log4j2/src/main/resources/log4j2-spring.xml
diff --git a/spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/test/java/org/baeldung/SpringContextIntegrationTest.java b/spring-boot-logging-log4j2/src/test/java/org/baeldung/SpringContextIntegrationTest.java
similarity index 100%
rename from spring-boot-logging-log4j2/spring-boot-logging-log4j2-app/src/test/java/org/baeldung/SpringContextIntegrationTest.java
rename to spring-boot-logging-log4j2/src/test/java/org/baeldung/SpringContextIntegrationTest.java
diff --git a/spring-ejb/pom.xml b/spring-ejb/pom.xml
index 31cde720f9..055df9ea04 100755
--- a/spring-ejb/pom.xml
+++ b/spring-ejb/pom.xml
@@ -73,6 +73,7 @@
ejb-remote-for-spring
ejb-beans
+ spring-ejb-client
diff --git a/spring-ejb/spring-ejb-client/pom.xml b/spring-ejb/spring-ejb-client/pom.xml
index c935e1f14a..50337e8b21 100644
--- a/spring-ejb/spring-ejb-client/pom.xml
+++ b/spring-ejb/spring-ejb-client/pom.xml
@@ -10,11 +10,22 @@
Spring EJB Client
- com.baeldung
- parent-boot-2
- 0.0.1-SNAPSHOT
- ../../parent-boot-2
+ com.baeldung.spring.ejb
+ spring-ejb
+ 1.0.1
+
+
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ 2.0.4.RELEASE
+ pom
+ import
+
+
+
@@ -54,6 +65,7 @@
org.springframework.boot
spring-boot-maven-plugin
+ 2.0.4.RELEASE
diff --git a/testing-modules/junit-5/README.md b/testing-modules/junit-5/README.md
index 836848282b..1fbd7a4a5e 100644
--- a/testing-modules/junit-5/README.md
+++ b/testing-modules/junit-5/README.md
@@ -15,3 +15,4 @@
- [The Order of Tests in JUnit](http://www.baeldung.com/junit-5-test-order)
- [Running JUnit Tests Programmatically, from a Java Application](https://www.baeldung.com/junit-tests-run-programmatically-from-java)
- [Testing an Abstract Class With JUnit](https://www.baeldung.com/junit-test-abstract-class)
+- [A Quick JUnit vs TestNG Comparison](http://www.baeldung.com/junit-vs-testng)
diff --git a/testing-modules/junit-5/src/main/java/com/baeldung/throwsexception/Calculator.java b/testing-modules/junit-5/src/main/java/com/baeldung/junit5vstestng/Calculator.java
similarity index 85%
rename from testing-modules/junit-5/src/main/java/com/baeldung/throwsexception/Calculator.java
rename to testing-modules/junit-5/src/main/java/com/baeldung/junit5vstestng/Calculator.java
index 50dbc9c774..4ff303c031 100644
--- a/testing-modules/junit-5/src/main/java/com/baeldung/throwsexception/Calculator.java
+++ b/testing-modules/junit-5/src/main/java/com/baeldung/junit5vstestng/Calculator.java
@@ -1,4 +1,4 @@
-package com.baeldung.throwsexception;
+package com.baeldung.junit5vstestng;
public class Calculator {
diff --git a/testing-modules/junit-5/src/main/java/com/baeldung/throwsexception/DivideByZeroException.java b/testing-modules/junit-5/src/main/java/com/baeldung/junit5vstestng/DivideByZeroException.java
similarity index 79%
rename from testing-modules/junit-5/src/main/java/com/baeldung/throwsexception/DivideByZeroException.java
rename to testing-modules/junit-5/src/main/java/com/baeldung/junit5vstestng/DivideByZeroException.java
index 4413374c99..4523f46590 100644
--- a/testing-modules/junit-5/src/main/java/com/baeldung/throwsexception/DivideByZeroException.java
+++ b/testing-modules/junit-5/src/main/java/com/baeldung/junit5vstestng/DivideByZeroException.java
@@ -1,4 +1,4 @@
-package com.baeldung.throwsexception;
+package com.baeldung.junit5vstestng;
public class DivideByZeroException extends RuntimeException {
diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/throwsexception/CalculatorUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/CalculatorUnitTest.java
similarity index 90%
rename from testing-modules/junit-5/src/test/java/com/baeldung/throwsexception/CalculatorUnitTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/CalculatorUnitTest.java
index ef838ed304..c563b01603 100644
--- a/testing-modules/junit-5/src/test/java/com/baeldung/throwsexception/CalculatorUnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/CalculatorUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.throwsexception;
+package com.baeldung.junit5vstestng;
import org.junit.Test;
diff --git a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/childpackage1/Class1UnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/Class1UnitTest.java
similarity index 81%
rename from testing-modules/junit-5/src/test/java/org/baeldung/java/suite/childpackage1/Class1UnitTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/Class1UnitTest.java
index 78469cb971..09c2b9108b 100644
--- a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/childpackage1/Class1UnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/Class1UnitTest.java
@@ -1,4 +1,4 @@
-package org.baeldung.java.suite.childpackage1;
+package com.baeldung.junit5vstestng;
import static org.junit.jupiter.api.Assertions.assertTrue;
diff --git a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/childpackage2/Class2UnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/Class2UnitTest.java
similarity index 81%
rename from testing-modules/junit-5/src/test/java/org/baeldung/java/suite/childpackage2/Class2UnitTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/Class2UnitTest.java
index 4463ecfad9..184ecafa1b 100644
--- a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/childpackage2/Class2UnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/Class2UnitTest.java
@@ -1,4 +1,4 @@
-package org.baeldung.java.suite.childpackage2;
+package com.baeldung.junit5vstestng;
import static org.junit.jupiter.api.Assertions.assertTrue;
diff --git a/testing-modules/junit-5/src/test/java/org/baeldung/java/customtestname/CustomNameUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/CustomNameUnitTest.java
similarity index 91%
rename from testing-modules/junit-5/src/test/java/org/baeldung/java/customtestname/CustomNameUnitTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/CustomNameUnitTest.java
index f04b825c89..9cf03ad3de 100644
--- a/testing-modules/junit-5/src/test/java/org/baeldung/java/customtestname/CustomNameUnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/CustomNameUnitTest.java
@@ -1,4 +1,4 @@
-package org.baeldung.java.customtestname;
+package com.baeldung.junit5vstestng;
import static org.junit.Assert.assertNotNull;
diff --git a/testing-modules/junit-5/src/test/java/org/baeldung/java/parameterisedsource/ParameterizedUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/ParameterizedUnitTest.java
similarity index 96%
rename from testing-modules/junit-5/src/test/java/org/baeldung/java/parameterisedsource/ParameterizedUnitTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/ParameterizedUnitTest.java
index 8d09161176..b5560650c4 100644
--- a/testing-modules/junit-5/src/test/java/org/baeldung/java/parameterisedsource/ParameterizedUnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/ParameterizedUnitTest.java
@@ -1,4 +1,4 @@
-package org.baeldung.java.parameterisedsource;
+package com.baeldung.junit5vstestng;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
diff --git a/testing-modules/junit-5/src/test/java/org/baeldung/java/parameterisedsource/PizzaDeliveryStrategy.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/PizzaDeliveryStrategy.java
similarity index 57%
rename from testing-modules/junit-5/src/test/java/org/baeldung/java/parameterisedsource/PizzaDeliveryStrategy.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/PizzaDeliveryStrategy.java
index ecfc7b4627..7f0a0ffa20 100644
--- a/testing-modules/junit-5/src/test/java/org/baeldung/java/parameterisedsource/PizzaDeliveryStrategy.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/PizzaDeliveryStrategy.java
@@ -1,4 +1,4 @@
-package org.baeldung.java.parameterisedsource;
+package com.baeldung.junit5vstestng;
public enum PizzaDeliveryStrategy {
EXPRESS,
diff --git a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/SelectClassesSuiteUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SelectClassesSuiteUnitTest.java
similarity index 63%
rename from testing-modules/junit-5/src/test/java/org/baeldung/java/suite/SelectClassesSuiteUnitTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SelectClassesSuiteUnitTest.java
index 220897eae7..7b4bd746bf 100644
--- a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/SelectClassesSuiteUnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SelectClassesSuiteUnitTest.java
@@ -1,7 +1,5 @@
-package org.baeldung.java.suite;
+package com.baeldung.junit5vstestng;
-import org.baeldung.java.suite.childpackage1.Class1UnitTest;
-import org.baeldung.java.suite.childpackage2.Class2UnitTest;
import org.junit.platform.runner.JUnitPlatform;
import org.junit.platform.suite.api.SelectClasses;
import org.junit.runner.RunWith;
diff --git a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/SelectPackagesSuiteUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SelectPackagesSuiteUnitTest.java
similarity index 89%
rename from testing-modules/junit-5/src/test/java/org/baeldung/java/suite/SelectPackagesSuiteUnitTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SelectPackagesSuiteUnitTest.java
index ae887ae43b..8f2eb2b5c5 100644
--- a/testing-modules/junit-5/src/test/java/org/baeldung/java/suite/SelectPackagesSuiteUnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SelectPackagesSuiteUnitTest.java
@@ -1,4 +1,4 @@
-package org.baeldung.java.suite;
+package com.baeldung.junit5vstestng;
import org.junit.platform.runner.JUnitPlatform;
import org.junit.platform.suite.api.SelectPackages;
diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SummationServiceIntegrationTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SummationServiceUnitTest.java
similarity index 96%
rename from testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SummationServiceIntegrationTest.java
rename to testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SummationServiceUnitTest.java
index 92e7a6f5db..a8c02e9968 100644
--- a/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SummationServiceIntegrationTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5vstestng/SummationServiceUnitTest.java
@@ -11,7 +11,7 @@ import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-public class SummationServiceIntegrationTest {
+public class SummationServiceUnitTest {
private static List numbers;
@BeforeAll
diff --git a/testing-modules/mockito/src/test/java/org/baeldung/mockito/FinalList.java b/testing-modules/mockito/src/test/java/org/baeldung/mockito/FinalList.java
index 3824de619c..c41021f7b6 100644
--- a/testing-modules/mockito/src/test/java/org/baeldung/mockito/FinalList.java
+++ b/testing-modules/mockito/src/test/java/org/baeldung/mockito/FinalList.java
@@ -1,6 +1,6 @@
package org.baeldung.mockito;
-public class FinalList extends MyList {
+public final class FinalList extends MyList {
@Override
public int size() {