diff --git a/apache-libraries/pom.xml b/apache-libraries/pom.xml
index c1def03bee..02e9f08a8d 100644
--- a/apache-libraries/pom.xml
+++ b/apache-libraries/pom.xml
@@ -191,7 +191,7 @@
2.0.6
2.0.1.Final
1.2.15
- 3.10.0
+ 4.12.0
1.2.15
1.2.15
1.2.15
diff --git a/core-java-modules/core-java-lang-oop-types-2/src/test/java/com/baeldung/enums/classcheck/CheckClassIsEnumUnitTest.java b/core-java-modules/core-java-lang-oop-types-2/src/test/java/com/baeldung/enums/classcheck/CheckClassIsEnumUnitTest.java
new file mode 100644
index 0000000000..a69df8739f
--- /dev/null
+++ b/core-java-modules/core-java-lang-oop-types-2/src/test/java/com/baeldung/enums/classcheck/CheckClassIsEnumUnitTest.java
@@ -0,0 +1,75 @@
+package com.baeldung.enums.classcheck;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+enum Device {
+ Keyboard, Monitor, Mouse, Printer
+}
+
+enum Weekday {
+ Monday, Tuesday, Wednesday, Thursday, Friday,
+ Saturday {
+ @Override
+ boolean isWeekend() {
+ return true;
+ }
+ },
+ Sunday {
+ @Override
+ boolean isWeekend() {
+ return true;
+ }
+ };
+
+ boolean isWeekend() {
+ return false;
+ }
+}
+
+public class CheckClassIsEnumUnitTest {
+
+ @Test
+ void whenUsingInstanceOf_thenGetExpectedResult() {
+ Object obj = Device.Keyboard;
+ assertTrue(obj instanceof Enum);
+ }
+
+ @Test
+ void whenUsingisInstance_thenGetExpectedResult() {
+ Object obj = Device.Keyboard;
+ assertTrue(Enum.class.isInstance(obj));
+ }
+
+ @Test
+ void whenUsingEnumClassisAssignableFrom_thenGetExpectedResult() {
+ Object obj = Device.Keyboard;
+ assertTrue(Enum.class.isAssignableFrom(obj.getClass()));
+ }
+
+ @Test
+ void whenUsingGetClassIsEnum_thenGetExpectedResult() {
+ assertTrue(Device.class.isEnum());
+
+ Object obj = Device.Keyboard;
+ assertTrue(obj.getClass().isEnum());
+ }
+
+
+ @Test
+ void whenEnum_thenGetExpectedResult() {
+ Object monday = Weekday.Monday;
+ assertTrue(monday instanceof Enum);
+ assertTrue(Enum.class.isInstance(monday));
+ assertTrue(Enum.class.isAssignableFrom(monday.getClass()));
+ assertTrue(monday.getClass().isEnum());
+
+ Object sunday = Weekday.Sunday;
+ assertTrue(sunday instanceof Enum);
+ assertTrue(Enum.class.isInstance(sunday));
+ assertTrue(Enum.class.isAssignableFrom(sunday.getClass()));
+ assertFalse(sunday.getClass().isEnum()); // <-- isEnum() check failed when Enum values with body
+ }
+}
\ No newline at end of file
diff --git a/java-spi/exchange-rate-impl/pom.xml b/java-spi/exchange-rate-impl/pom.xml
index 254a8bb809..7ec10b1c04 100644
--- a/java-spi/exchange-rate-impl/pom.xml
+++ b/java-spi/exchange-rate-impl/pom.xml
@@ -65,7 +65,7 @@
1.0.0-SNAPSHOT
- 3.10.0
+ 4.12.0
1.0
1.0.1
1.1.2
diff --git a/javaxval-2/pom.xml b/javaxval-2/pom.xml
index f73f23bcb2..366fd9fdbf 100644
--- a/javaxval-2/pom.xml
+++ b/javaxval-2/pom.xml
@@ -9,26 +9,24 @@
com.baeldung
- parent-modules
- 1.0.0-SNAPSHOT
+ parent-boot-3
+ 0.0.1-SNAPSHOT
+ ../parent-boot-3
org.springframework.boot
spring-boot-starter-validation
- ${spring.boot.version}
org.springframework.boot
spring-boot-starter-test
- ${spring.boot.version}
test
com.fasterxml.jackson.core
jackson-databind
- ${jackson.databind.version}
@@ -42,9 +40,16 @@
-
- 3.0.4
- 2.14.0
-
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+ true
+
+
+
+
\ No newline at end of file
diff --git a/javaxval-2/src/test/java/com/baeldung/javaxval/afterdeserialization/StudentDeserializerWithValidationUnitTest.java b/javaxval-2/src/test/java/com/baeldung/javaxval/afterdeserialization/StudentDeserializerWithValidationUnitTest.java
index 094236e963..8c3761ae09 100644
--- a/javaxval-2/src/test/java/com/baeldung/javaxval/afterdeserialization/StudentDeserializerWithValidationUnitTest.java
+++ b/javaxval-2/src/test/java/com/baeldung/javaxval/afterdeserialization/StudentDeserializerWithValidationUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.javaxval;
+package com.baeldung.javaxval.afterdeserialization;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
diff --git a/javaxval/pom.xml b/javaxval/pom.xml
index c4a30f915d..e1a3dc350c 100644
--- a/javaxval/pom.xml
+++ b/javaxval/pom.xml
@@ -8,20 +8,19 @@
com.baeldung
- parent-modules
- 1.0.0-SNAPSHOT
+ parent-boot-3
+ 0.0.1-SNAPSHOT
+ ../parent-boot-3
org.springframework.boot
spring-boot-starter-validation
- ${spring.boot.version}
org.springframework.boot
spring-boot-starter-test
- ${spring.boot.version}
test
@@ -38,7 +37,6 @@
8.0.1.Final
- 3.0.4
\ No newline at end of file
diff --git a/libraries-http-2/pom.xml b/libraries-http-2/pom.xml
index c80c5729a7..b49e4b9387 100644
--- a/libraries-http-2/pom.xml
+++ b/libraries-http-2/pom.xml
@@ -109,7 +109,7 @@
- 4.9.1
+ 4.12.0
2.10.1
4.9.1
1.0.3
diff --git a/libraries-http/pom.xml b/libraries-http/pom.xml
index c726b56b5d..caf42639cc 100644
--- a/libraries-http/pom.xml
+++ b/libraries-http/pom.xml
@@ -105,7 +105,7 @@
2.10.1
4.5.3
- 4.9.1
+ 4.12.0
1.23.0
2.2.0
2.3.0
diff --git a/osgi/pom.xml b/osgi/pom.xml
index ecc8758ef9..16b1f5d106 100644
--- a/osgi/pom.xml
+++ b/osgi/pom.xml
@@ -91,7 +91,7 @@
- 3.9.0
+ 4.12.0
1.1
6.0.0
3.3.0
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/README.md b/persistence-modules/spring-data-jpa-enterprise-2/README.md
index 9bb08cc497..8e154f6b75 100644
--- a/persistence-modules/spring-data-jpa-enterprise-2/README.md
+++ b/persistence-modules/spring-data-jpa-enterprise-2/README.md
@@ -4,8 +4,7 @@ This module contains articles about Spring Data JPA used in enterprise applicati
### Relevant Articles:
-- [Spring JPA – Multiple Databases](https://www.baeldung.com/spring-data-jpa-multiple-databases)
-- [Pagination and Sorting using Spring Data JPA](https://www.baeldung.com/spring-data-jpa-pagination-sorting)
+
### Eclipse Config
After importing the project into Eclipse, you may see the following error:
diff --git a/persistence-modules/spring-data-jpa-enterprise/README.md b/persistence-modules/spring-data-jpa-enterprise/README.md
index d1039dcc50..b563fa46d4 100644
--- a/persistence-modules/spring-data-jpa-enterprise/README.md
+++ b/persistence-modules/spring-data-jpa-enterprise/README.md
@@ -11,6 +11,8 @@ This module contains articles about Spring Data JPA used in enterprise applicati
- [Custom Naming Convention with Spring Data JPA](https://www.baeldung.com/spring-data-jpa-custom-naming)
- [Partial Data Update With Spring Data](https://www.baeldung.com/spring-data-partial-update)
- [Spring Data JPA @Modifying Annotation](https://www.baeldung.com/spring-data-jpa-modifying-annotation)
+- [Spring JPA – Multiple Databases](https://www.baeldung.com/spring-data-jpa-multiple-databases)
+- [Pagination and Sorting using Spring Data JPA](https://www.baeldung.com/spring-data-jpa-pagination-sorting)
### Eclipse Config
After importing the project into Eclipse, you may see the following error:
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/MultipleDbApplication.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/MultipleDbApplication.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/MultipleDbApplication.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/MultipleDbApplication.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceProductAutoConfiguration.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceProductAutoConfiguration.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceProductAutoConfiguration.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceProductAutoConfiguration.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceProductConfiguration.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceProductConfiguration.java
similarity index 99%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceProductConfiguration.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceProductConfiguration.java
index bcf2cd84eb..da974e979a 100644
--- a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceProductConfiguration.java
+++ b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceProductConfiguration.java
@@ -1,6 +1,9 @@
package com.baeldung.multipledb;
-import com.google.common.base.Preconditions;
+import java.util.HashMap;
+
+import javax.sql.DataSource;
+
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -14,8 +17,7 @@ import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
import org.springframework.transaction.PlatformTransactionManager;
-import javax.sql.DataSource;
-import java.util.HashMap;
+import com.google.common.base.Preconditions;
@Configuration
@PropertySource({"classpath:persistence-multiple-db.properties"})
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceUserAutoConfiguration.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceUserAutoConfiguration.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceUserAutoConfiguration.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceUserAutoConfiguration.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceUserConfiguration.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceUserConfiguration.java
similarity index 90%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceUserConfiguration.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceUserConfiguration.java
index 6b48455c0c..ca5d6f9c7a 100644
--- a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/PersistenceUserConfiguration.java
+++ b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/PersistenceUserConfiguration.java
@@ -1,8 +1,15 @@
package com.baeldung.multipledb;
-import com.google.common.base.Preconditions;
+import java.util.HashMap;
+
+import javax.sql.DataSource;
+
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.*;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+import org.springframework.context.annotation.Profile;
+import org.springframework.context.annotation.PropertySource;
import org.springframework.core.env.Environment;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
@@ -11,8 +18,7 @@ import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
import org.springframework.transaction.PlatformTransactionManager;
-import javax.sql.DataSource;
-import java.util.HashMap;
+import com.google.common.base.Preconditions;
@Configuration
@PropertySource({"classpath:persistence-multiple-db.properties"})
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/dao/product/ProductRepository.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/dao/product/ProductRepository.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/dao/product/ProductRepository.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/dao/product/ProductRepository.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/dao/user/PossessionRepository.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/dao/user/PossessionRepository.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/dao/user/PossessionRepository.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/dao/user/PossessionRepository.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/dao/user/UserRepository.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/dao/user/UserRepository.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/dao/user/UserRepository.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/dao/user/UserRepository.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/product/Product.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/product/Product.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/product/Product.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/product/Product.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/user/Possession.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/user/Possession.java
similarity index 90%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/user/Possession.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/user/Possession.java
index af646ffd04..c9bd3c42bc 100644
--- a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/user/Possession.java
+++ b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/user/Possession.java
@@ -1,6 +1,10 @@
package com.baeldung.multipledb.model.user;
-import javax.persistence.*;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
@Entity
@Table
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/user/User.java b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/user/User.java
similarity index 87%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/user/User.java
rename to persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/user/User.java
index 1985c543d3..224eefc3ff 100644
--- a/persistence-modules/spring-data-jpa-enterprise-2/src/main/java/com/baeldung/multipledb/model/user/User.java
+++ b/persistence-modules/spring-data-jpa-enterprise/src/main/java/com/baeldung/multipledb/model/user/User.java
@@ -1,9 +1,15 @@
package com.baeldung.multipledb.model.user;
-import javax.persistence.*;
-
import java.util.List;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+
@Entity
@Table(name = "users")
public class User {
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/resources/persistence-multiple-db-boot.properties b/persistence-modules/spring-data-jpa-enterprise/src/main/resources/persistence-multiple-db-boot.properties
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/resources/persistence-multiple-db-boot.properties
rename to persistence-modules/spring-data-jpa-enterprise/src/main/resources/persistence-multiple-db-boot.properties
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/main/resources/persistence-multiple-db.properties b/persistence-modules/spring-data-jpa-enterprise/src/main/resources/persistence-multiple-db.properties
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/main/resources/persistence-multiple-db.properties
rename to persistence-modules/spring-data-jpa-enterprise/src/main/resources/persistence-multiple-db.properties
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/test/java/com/baeldung/multipledb/JpaMultipleDBIntegrationTest.java b/persistence-modules/spring-data-jpa-enterprise/src/test/java/com/baeldung/multipledb/JpaMultipleDBIntegrationTest.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/test/java/com/baeldung/multipledb/JpaMultipleDBIntegrationTest.java
rename to persistence-modules/spring-data-jpa-enterprise/src/test/java/com/baeldung/multipledb/JpaMultipleDBIntegrationTest.java
diff --git a/persistence-modules/spring-data-jpa-enterprise-2/src/test/java/com/baeldung/multipledb/ProductRepositoryIntegrationTest.java b/persistence-modules/spring-data-jpa-enterprise/src/test/java/com/baeldung/multipledb/ProductRepositoryIntegrationTest.java
similarity index 100%
rename from persistence-modules/spring-data-jpa-enterprise-2/src/test/java/com/baeldung/multipledb/ProductRepositoryIntegrationTest.java
rename to persistence-modules/spring-data-jpa-enterprise/src/test/java/com/baeldung/multipledb/ProductRepositoryIntegrationTest.java
diff --git a/spring-reactive-modules/spring-reactive-client/pom.xml b/spring-reactive-modules/spring-reactive-client/pom.xml
index 94134e5271..5736ce497f 100644
--- a/spring-reactive-modules/spring-reactive-client/pom.xml
+++ b/spring-reactive-modules/spring-reactive-client/pom.xml
@@ -179,7 +179,7 @@
1.0.1.RELEASE
1.0
1.1.6
- 4.0.1
+ 4.12.0
3.5.3
2.26.0
3.1.4
diff --git a/spring-web-modules/pom.xml b/spring-web-modules/pom.xml
index 2be896ad83..87bcfaa203 100644
--- a/spring-web-modules/pom.xml
+++ b/spring-web-modules/pom.xml
@@ -44,6 +44,7 @@
spring-rest-simple
spring-rest-testing
spring-resttemplate
+ spring-resttemplate-1
spring-resttemplate-2
spring-resttemplate-3
spring-session
diff --git a/spring-web-modules/spring-mvc-java-2/README.md b/spring-web-modules/spring-mvc-java-2/README.md
index 74d8cca312..1f8231bada 100644
--- a/spring-web-modules/spring-mvc-java-2/README.md
+++ b/spring-web-modules/spring-mvc-java-2/README.md
@@ -1,9 +1,7 @@
### Relevant Articles:
- [Cache Headers in Spring MVC](https://www.baeldung.com/spring-mvc-cache-headers)
-- [Working with Date Parameters in Spring](https://www.baeldung.com/spring-date-parameters)
- [Spring MVC @PathVariable with a dot (.) gets truncated](https://www.baeldung.com/spring-mvc-pathvariable-dot)
- [A Quick Guide to Spring MVC Matrix Variables](https://www.baeldung.com/spring-mvc-matrix-variables)
- [Converting a Spring MultipartFile to a File](https://www.baeldung.com/spring-multipartfile-to-file)
- [Testing a Spring Multipart POST Request](https://www.baeldung.com/spring-multipart-post-request-test)
-- [Spring @PathVariable Annotation](https://www.baeldung.com/spring-pathvariable)
diff --git a/spring-web-modules/spring-mvc-java/README.md b/spring-web-modules/spring-mvc-java/README.md
index afd1aea3bf..656e415f6a 100644
--- a/spring-web-modules/spring-mvc-java/README.md
+++ b/spring-web-modules/spring-mvc-java/README.md
@@ -14,3 +14,6 @@ The "REST With Spring" Classes: https://bit.ly/restwithspring
- [web.xml vs Initializer with Spring](https://www.baeldung.com/spring-xml-vs-java-config)
- [A Java Web Application Without a web.xml](https://www.baeldung.com/java-web-app-without-web-xml)
- [Accessing Spring MVC Model Objects in JavaScript](https://www.baeldung.com/spring-mvc-model-objects-js)
+- [Spring @PathVariable Annotation](https://www.baeldung.com/spring-pathvariable)
+- [Working with Date Parameters in Spring](https://www.baeldung.com/spring-date-parameters)
+
diff --git a/spring-web-modules/spring-mvc-java-2/src/main/java/com/baeldung/datetime/DateTimeConfig.java b/spring-web-modules/spring-mvc-java/src/main/java/com/baeldung/datetime/DateTimeConfig.java
similarity index 100%
rename from spring-web-modules/spring-mvc-java-2/src/main/java/com/baeldung/datetime/DateTimeConfig.java
rename to spring-web-modules/spring-mvc-java/src/main/java/com/baeldung/datetime/DateTimeConfig.java
diff --git a/spring-web-modules/spring-mvc-java-2/src/main/java/com/baeldung/datetime/DateTimeController.java b/spring-web-modules/spring-mvc-java/src/main/java/com/baeldung/datetime/DateTimeController.java
similarity index 100%
rename from spring-web-modules/spring-mvc-java-2/src/main/java/com/baeldung/datetime/DateTimeController.java
rename to spring-web-modules/spring-mvc-java/src/main/java/com/baeldung/datetime/DateTimeController.java
diff --git a/spring-web-modules/spring-mvc-java-2/src/main/java/com/baeldung/pathvariable/PathVariableAnnotationController.java b/spring-web-modules/spring-mvc-java/src/main/java/com/baeldung/pathvariable/PathVariableAnnotationController.java
similarity index 100%
rename from spring-web-modules/spring-mvc-java-2/src/main/java/com/baeldung/pathvariable/PathVariableAnnotationController.java
rename to spring-web-modules/spring-mvc-java/src/main/java/com/baeldung/pathvariable/PathVariableAnnotationController.java
diff --git a/spring-web-modules/spring-rest-simple/pom.xml b/spring-web-modules/spring-rest-simple/pom.xml
index 2764ac8393..089c5e411f 100644
--- a/spring-web-modules/spring-rest-simple/pom.xml
+++ b/spring-web-modules/spring-rest-simple/pom.xml
@@ -292,7 +292,7 @@
1.6.0
3.0.4
- 3.4.1
+ 4.12.0
2.2.0
diff --git a/spring-web-modules/spring-resttemplate-1/README.md b/spring-web-modules/spring-resttemplate-1/README.md
new file mode 100644
index 0000000000..d5cf69e86a
--- /dev/null
+++ b/spring-web-modules/spring-resttemplate-1/README.md
@@ -0,0 +1,7 @@
+## Spring RestTemplate
+
+This module contains articles about Spring RestTemplate
+
+### Relevant Articles:
+- [RestTemplate Post Request with JSON](https://www.baeldung.com/spring-resttemplate-post-json)
+- [Get and Post Lists of Objects with RestTemplate](https://www.baeldung.com/spring-rest-template-list)
diff --git a/spring-web-modules/spring-resttemplate-1/pom.xml b/spring-web-modules/spring-resttemplate-1/pom.xml
new file mode 100644
index 0000000000..209c941ede
--- /dev/null
+++ b/spring-web-modules/spring-resttemplate-1/pom.xml
@@ -0,0 +1,30 @@
+
+
+ 4.0.0
+ spring-resttemplate-1
+ 0.1-SNAPSHOT
+ spring-resttemplate-1
+ war
+
+
+ com.baeldung
+ parent-boot-2
+ 0.0.1-SNAPSHOT
+ ../../parent-boot-2
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+
+
+
+
\ No newline at end of file
diff --git a/spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/RestTemplateApplication.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/RestTemplateApplication.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/RestTemplateApplication.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/RestTemplateApplication.java
diff --git a/spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/RestTemplateConfigurationApplication.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/RestTemplateConfigurationApplication.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/RestTemplateConfigurationApplication.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/RestTemplateConfigurationApplication.java
diff --git a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/EmployeeApplication.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/EmployeeApplication.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/EmployeeApplication.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/EmployeeApplication.java
diff --git a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/client/EmployeeClient.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/client/EmployeeClient.java
similarity index 99%
rename from spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/client/EmployeeClient.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/client/EmployeeClient.java
index 49e375f9cc..7fa0d55690 100644
--- a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/client/EmployeeClient.java
+++ b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/client/EmployeeClient.java
@@ -1,16 +1,17 @@
package com.baeldung.resttemplate.lists.client;
-import com.baeldung.resttemplate.lists.dto.Employee;
-import com.baeldung.resttemplate.lists.dto.EmployeeList;
+import static java.util.Arrays.asList;
+
+import java.util.ArrayList;
+import java.util.List;
+
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
-import java.util.ArrayList;
-import java.util.List;
-
-import static java.util.Arrays.asList;
+import com.baeldung.resttemplate.lists.dto.Employee;
+import com.baeldung.resttemplate.lists.dto.EmployeeList;
/**
* Application that shows how to use Lists with RestTemplate.
diff --git a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/controller/EmployeeResource.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/controller/EmployeeResource.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/controller/EmployeeResource.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/controller/EmployeeResource.java
index 8a4d510f63..1cd68f89b9 100644
--- a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/controller/EmployeeResource.java
+++ b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/controller/EmployeeResource.java
@@ -1,5 +1,7 @@
package com.baeldung.resttemplate.lists.controller;
+import java.util.List;
+
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -10,8 +12,6 @@ import com.baeldung.resttemplate.lists.dto.Employee;
import com.baeldung.resttemplate.lists.dto.EmployeeList;
import com.baeldung.resttemplate.lists.service.EmployeeService;
-import java.util.List;
-
@RestController
@RequestMapping("/employees")
public class EmployeeResource
diff --git a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/dto/Employee.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/dto/Employee.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/dto/Employee.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/dto/Employee.java
diff --git a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/dto/EmployeeList.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/dto/EmployeeList.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/dto/EmployeeList.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/dto/EmployeeList.java
diff --git a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/service/EmployeeService.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/service/EmployeeService.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/service/EmployeeService.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/service/EmployeeService.java
index 8a1773483a..a9ea3f373f 100644
--- a/spring-web-modules/spring-resttemplate-3/src/main/java/com/baeldung/resttemplate/lists/service/EmployeeService.java
+++ b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/lists/service/EmployeeService.java
@@ -1,12 +1,12 @@
package com.baeldung.resttemplate.lists.service;
+import java.util.ArrayList;
+import java.util.List;
+
import org.springframework.stereotype.Service;
import com.baeldung.resttemplate.lists.dto.Employee;
-import java.util.ArrayList;
-import java.util.List;
-
@Service("EmployeeListService")
public class EmployeeService
{
diff --git a/spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/controller/PersonAPI.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/controller/PersonAPI.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/controller/PersonAPI.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/controller/PersonAPI.java
diff --git a/spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/dto/Person.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/dto/Person.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/dto/Person.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/dto/Person.java
diff --git a/spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/service/PersonService.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/service/PersonService.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/service/PersonService.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/service/PersonService.java
diff --git a/spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/service/PersonServiceImpl.java b/spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/service/PersonServiceImpl.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/main/java/com/baeldung/resttemplate/web/service/PersonServiceImpl.java
rename to spring-web-modules/spring-resttemplate-1/src/main/java/com/baeldung/resttemplate/web/service/PersonServiceImpl.java
diff --git a/spring-web-modules/spring-resttemplate-1/src/main/resources/application.properties b/spring-web-modules/spring-resttemplate-1/src/main/resources/application.properties
new file mode 100644
index 0000000000..ea4f7c866d
--- /dev/null
+++ b/spring-web-modules/spring-resttemplate-1/src/main/resources/application.properties
@@ -0,0 +1,2 @@
+server.port=8080
+server.servlet.context-path=/spring-rest
\ No newline at end of file
diff --git a/spring-web-modules/spring-resttemplate-2/src/test/java/com/baeldung/resttemplate/postjson/PersonAPILiveTest.java b/spring-web-modules/spring-resttemplate-1/src/test/java/com/baeldung/resttemplate/postjson/PersonAPILiveTest.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/test/java/com/baeldung/resttemplate/postjson/PersonAPILiveTest.java
rename to spring-web-modules/spring-resttemplate-1/src/test/java/com/baeldung/resttemplate/postjson/PersonAPILiveTest.java
diff --git a/spring-web-modules/spring-resttemplate-2/src/test/java/com/baeldung/resttemplate/postjson/RestTemplatePostRequestEncodingLiveTest.java b/spring-web-modules/spring-resttemplate-1/src/test/java/com/baeldung/resttemplate/postjson/RestTemplatePostRequestEncodingLiveTest.java
similarity index 100%
rename from spring-web-modules/spring-resttemplate-2/src/test/java/com/baeldung/resttemplate/postjson/RestTemplatePostRequestEncodingLiveTest.java
rename to spring-web-modules/spring-resttemplate-1/src/test/java/com/baeldung/resttemplate/postjson/RestTemplatePostRequestEncodingLiveTest.java
diff --git a/spring-web-modules/spring-resttemplate-1/src/test/resources/application.properties b/spring-web-modules/spring-resttemplate-1/src/test/resources/application.properties
new file mode 100644
index 0000000000..286ea95a4f
--- /dev/null
+++ b/spring-web-modules/spring-resttemplate-1/src/test/resources/application.properties
@@ -0,0 +1,5 @@
+logging.level.org.springframework.web.client.RestTemplate=DEBUG
+logging.level.com.baeldung.resttemplate.logging=DEBUG
+logging.level.org.apache.http=DEBUG
+logging.level.httpclient.wire=DEBUG
+logging.pattern.console=%20logger{20} - %msg%n
diff --git a/spring-web-modules/spring-resttemplate-1/src/test/resources/logback-test.xml b/spring-web-modules/spring-resttemplate-1/src/test/resources/logback-test.xml
new file mode 100644
index 0000000000..8d4771e308
--- /dev/null
+++ b/spring-web-modules/spring-resttemplate-1/src/test/resources/logback-test.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ [%d{ISO8601}]-[%thread] %-5level %logger - %msg%n
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/spring-web-modules/spring-resttemplate-2/README.md b/spring-web-modules/spring-resttemplate-2/README.md
index ace7ae817b..ad2a671040 100644
--- a/spring-web-modules/spring-resttemplate-2/README.md
+++ b/spring-web-modules/spring-resttemplate-2/README.md
@@ -7,7 +7,6 @@ This module contains articles about Spring RestTemplate
- [Spring RestTemplate Request/Response Logging](https://www.baeldung.com/spring-resttemplate-logging)
- [Proxies With RestTemplate](https://www.baeldung.com/java-resttemplate-proxy)
- [A Custom Media Type for a Spring REST API](https://www.baeldung.com/spring-rest-custom-media-type)
-- [RestTemplate Post Request with JSON](https://www.baeldung.com/spring-resttemplate-post-json)
- [How to Compress Requests Using the Spring RestTemplate](https://www.baeldung.com/spring-resttemplate-compressing-requests)
- [Get list of JSON objects with Spring RestTemplate](https://www.baeldung.com/spring-resttemplate-json-list)
- [Spring RestTemplate Exception: “Not enough variables available to expand”](https://www.baeldung.com/spring-not-enough-variables-available)
diff --git a/spring-web-modules/spring-resttemplate-3/README.md b/spring-web-modules/spring-resttemplate-3/README.md
index f3cfb1d671..14aaf77b9e 100644
--- a/spring-web-modules/spring-resttemplate-3/README.md
+++ b/spring-web-modules/spring-resttemplate-3/README.md
@@ -7,7 +7,6 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring
### Relevant Articles:
- [Uploading MultipartFile with Spring RestTemplate](https://www.baeldung.com/spring-rest-template-multipart-upload)
-- [Get and Post Lists of Objects with RestTemplate](https://www.baeldung.com/spring-rest-template-list)
- [Download a Large File Through a Spring RestTemplate](https://www.baeldung.com/spring-resttemplate-download-large-file)
- [Access HTTPS REST Service Using Spring RestTemplate](https://www.baeldung.com/spring-resttemplate-secure-https-service)
- [Encoding of URI Variables on RestTemplate](https://www.baeldung.com/spring-resttemplate-uri-variables-encode)
diff --git a/spring-web-modules/spring-resttemplate/pom.xml b/spring-web-modules/spring-resttemplate/pom.xml
index 4abaac5628..5cf1476f87 100644
--- a/spring-web-modules/spring-resttemplate/pom.xml
+++ b/spring-web-modules/spring-resttemplate/pom.xml
@@ -274,7 +274,7 @@
1.6.1
3.0.4
- 3.4.1
+ 4.12.0
3.6.3
1.8
1.8
diff --git a/web-modules/jooby/pom.xml b/web-modules/jooby/pom.xml
index 238f17571f..998ceaef4e 100644
--- a/web-modules/jooby/pom.xml
+++ b/web-modules/jooby/pom.xml
@@ -77,7 +77,7 @@
com.baeldung.jooby.App
3.2.4
3.8.1
- 4.9.1
+ 4.12.0
\ No newline at end of file