From 8efe817cd38e160faafa9fb113b73fcee773ba90 Mon Sep 17 00:00:00 2001 From: Roger Yates <587230+rojyates@users.noreply.github.com> Date: Tue, 10 Mar 2020 09:19:13 +1000 Subject: [PATCH 01/72] BAEL-3603 Add test examples for Java IO versus NIO article --- core-java-modules/core-java-io-2/pom.xml | 8 ++ .../BlockingClientUnitTest.java | 51 ++++++++++ .../NonBlockingClientUnitTest.java | 94 +++++++++++++++++++ 3 files changed, 153 insertions(+) create mode 100644 core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java create mode 100644 core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java diff --git a/core-java-modules/core-java-io-2/pom.xml b/core-java-modules/core-java-io-2/pom.xml index 0c271737d9..960cc51bbd 100644 --- a/core-java-modules/core-java-io-2/pom.xml +++ b/core-java-modules/core-java-io-2/pom.xml @@ -45,6 +45,14 @@ ${assertj.version} test + + + com.github.tomakehurst + wiremock + 2.26.3 + test + + diff --git a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java new file mode 100644 index 0000000000..eca2a2638f --- /dev/null +++ b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java @@ -0,0 +1,51 @@ +package com.baeldung.blockingnonblocking; + +import com.github.tomakehurst.wiremock.junit.WireMockRule; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; + +import java.io.*; +import java.net.Socket; + +import static com.github.tomakehurst.wiremock.client.WireMock.*; +import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.wireMockConfig; +import static org.junit.Assert.assertTrue; + +public class BlockingClientUnitTest { + private static final String REQUESTED_RESOURCE = "/test.json"; + + @Rule public WireMockRule wireMockRule = new WireMockRule(wireMockConfig().dynamicPort()); + + @Before + public void setup() { + stubFor(get(urlEqualTo(REQUESTED_RESOURCE)).willReturn(aResponse() + .withStatus(200) + .withBody("{ \"response\" : \"It worked!\" }\r\n\r\n"))); + } + + @Test + public void givenJavaIOSocket_whenReadingAndWritingWithStreams_thenReadSuccessfully() throws IOException { + // given an IO socket and somewhere to store our result + Socket socket = new Socket("localhost", wireMockRule.port()); + StringBuilder ourStore = new StringBuilder(); + + // when we write and read (using try-with-resources so our resources are auto-closed) + try (InputStream serverInput = socket.getInputStream(); + BufferedReader reader = new BufferedReader(new InputStreamReader(serverInput)); + OutputStream clientOutput = socket.getOutputStream(); + PrintWriter writer = new PrintWriter(new OutputStreamWriter(clientOutput))) { + writer.print("GET " + REQUESTED_RESOURCE + " HTTP/1.0\r\n\r\n"); + writer.flush(); // important - without this the request is never sent, and the test will hang on readLine() + + for (String line; (line = reader.readLine()) != null; ) { + ourStore.append(line); + } + } + + // then we read and saved our data + assertTrue(ourStore + .toString() + .contains("It worked!")); + } +} \ No newline at end of file diff --git a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java new file mode 100644 index 0000000000..47115887ab --- /dev/null +++ b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java @@ -0,0 +1,94 @@ +package com.baeldung.blockingnonblocking; + +import com.github.tomakehurst.wiremock.junit.WireMockRule; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; + +import java.io.IOException; +import java.net.InetSocketAddress; +import java.nio.ByteBuffer; +import java.nio.CharBuffer; +import java.nio.channels.SocketChannel; +import java.nio.charset.Charset; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.StandardCharsets; + +import static com.github.tomakehurst.wiremock.client.WireMock.*; +import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.wireMockConfig; +import static org.junit.Assert.assertTrue; + +public class NonBlockingClientUnitTest { + private String REQUESTED_RESOURCE = "/test.json"; + + @Rule public WireMockRule wireMockRule = new WireMockRule(wireMockConfig().dynamicPort()); + + @Before + public void setup() { + stubFor(get(urlEqualTo(REQUESTED_RESOURCE)).willReturn(aResponse() + .withStatus(200) + .withBody("{ \"response\" : \"It worked!\" }"))); + } + + @Test + public void givenJavaNIOSocketChannel_whenReadingAndWriting_thenUseBuffers() throws IOException { + // given a NIO SocketChannel and a charset + InetSocketAddress address = new InetSocketAddress("localhost", wireMockRule.port()); + SocketChannel socketChannel = SocketChannel.open(address); + Charset charset = StandardCharsets.UTF_8; + + // when we write and read using buffers + socketChannel.write(charset.encode(CharBuffer.wrap("GET " + REQUESTED_RESOURCE + " HTTP/1.0\r\n\r\n"))); + + ByteBuffer buffer = ByteBuffer.allocate(8); // or allocateDirect if we need direct memory access + CharBuffer charBuffer = CharBuffer.allocate(8192); + CharsetDecoder decoder = charset.newDecoder(); + StringBuilder ourStore = new StringBuilder(); + while (socketChannel.read(buffer) != -1 || buffer.position() > 0) { + buffer.flip(); + storeBufferContents(buffer, charBuffer, decoder, ourStore); + buffer.compact(); + } + socketChannel.close(); + + // then we read and saved our data + assertTrue(ourStore + .toString() + .contains("It worked!")); + } + + @Test + public void givenJavaNIO_whenReadingAndWriting_thenSmallBuffers() throws IOException { + // given a NIO SocketChannel and a charset + InetSocketAddress address = new InetSocketAddress("localhost", wireMockRule.port()); + SocketChannel socket = SocketChannel.open(address); + Charset charset = StandardCharsets.UTF_8; + + // when we write and read using buffers that are too small for our message + socket.write(charset.encode(CharBuffer.wrap("GET " + REQUESTED_RESOURCE + " HTTP/1.0\r\n\r\n"))); + + ByteBuffer buffer = ByteBuffer.allocate(8); // or allocateDirect if we need direct memory access + CharBuffer charBuffer = CharBuffer.allocate(8); + CharsetDecoder decoder = charset.newDecoder(); + StringBuilder ourStore = new StringBuilder(); + while (socket.read(buffer) != -1 || buffer.position() > 0) { + buffer.flip(); + storeBufferContents(buffer, charBuffer, decoder, ourStore); + buffer.compact(); + } + socket.close(); + + // then we read and saved our data + assertTrue(ourStore + .toString() + .contains("It worked!")); + } + + void storeBufferContents(ByteBuffer buffer, CharBuffer charBuffer, CharsetDecoder decoder, StringBuilder ourStore) { + decoder.decode(buffer, charBuffer, true); + charBuffer.flip(); + ourStore.append(charBuffer); + charBuffer.clear(); + } + +} \ No newline at end of file From fad2d2a67ccc4d709f817ae902fa5078cca00d68 Mon Sep 17 00:00:00 2001 From: Roger Yates <587230+rojyates@users.noreply.github.com> Date: Thu, 12 Mar 2020 06:12:42 +1000 Subject: [PATCH 02/72] BAEL-3603 Add line separator to preserve lines read --- .../com/baeldung/blockingnonblocking/BlockingClientUnitTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java index eca2a2638f..3fc968ded0 100644 --- a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java +++ b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java @@ -40,6 +40,7 @@ public class BlockingClientUnitTest { for (String line; (line = reader.readLine()) != null; ) { ourStore.append(line); + ourStore.append(System.lineSeparator()); } } From 3750e28487a7250117240518509acd4d37c5467a Mon Sep 17 00:00:00 2001 From: Ashley Frieze Date: Sun, 15 Mar 2020 11:07:17 +0000 Subject: [PATCH 03/72] BAEL-3339 Remove unnecessary Spring Security Core dependency --- spring-boot-modules/spring-boot-security/pom.xml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/spring-boot-modules/spring-boot-security/pom.xml b/spring-boot-modules/spring-boot-security/pom.xml index a72113ce2f..98eceaff96 100644 --- a/spring-boot-modules/spring-boot-security/pom.xml +++ b/spring-boot-modules/spring-boot-security/pom.xml @@ -24,11 +24,6 @@ spring-security-oauth2 2.4.0.RELEASE - - org.springframework.security - spring-security-core - 5.2.1.RELEASE - commons-io commons-io From 1f4a4e24ec8cf6b1d389421e62a0b079815c33c9 Mon Sep 17 00:00:00 2001 From: "amit.pandey" Date: Sun, 15 Mar 2020 18:22:24 +0530 Subject: [PATCH 04/72] pom formatting --- akka-http/pom.xml | 7 +- akka-streams/pom.xml | 6 +- algorithms-genetic/pom.xml | 6 +- algorithms-miscellaneous-1/pom.xml | 6 +- algorithms-miscellaneous-2/pom.xml | 6 +- algorithms-miscellaneous-3/pom.xml | 6 +- algorithms-miscellaneous-4/pom.xml | 6 +- algorithms-miscellaneous-5/pom.xml | 6 +- algorithms-searching/pom.xml | 6 +- algorithms-sorting-2/pom.xml | 6 +- algorithms-sorting/pom.xml | 6 +- animal-sniffer-mvn-plugin/pom.xml | 8 +- annotations/annotation-processing/pom.xml | 6 +- annotations/annotation-user/pom.xml | 6 +- annotations/pom.xml | 6 +- antlr/pom.xml | 8 +- apache-avro/pom.xml | 7 +- apache-bval/pom.xml | 6 +- apache-curator/pom.xml | 6 +- apache-cxf/cxf-aegis/pom.xml | 6 +- apache-cxf/cxf-introduction/pom.xml | 6 +- apache-cxf/cxf-jaxrs-implementation/pom.xml | 6 +- apache-cxf/cxf-spring/pom.xml | 6 +- apache-cxf/pom.xml | 6 +- apache-cxf/sse-jaxrs/pom.xml | 7 +- apache-cxf/sse-jaxrs/sse-jaxrs-client/pom.xml | 7 +- apache-cxf/sse-jaxrs/sse-jaxrs-server/pom.xml | 9 +- apache-fop/pom.xml | 6 +- apache-geode/pom.xml | 7 +- apache-meecrowave/pom.xml | 6 +- apache-olingo/olingo2/pom.xml | 7 +- apache-opennlp/pom.xml | 6 +- apache-poi/pom.xml | 6 +- apache-pulsar/pom.xml | 6 +- apache-rocketmq/pom.xml | 7 +- apache-shiro/pom.xml | 7 +- apache-solrj/pom.xml | 6 +- apache-spark/pom.xml | 7 +- apache-tapestry/pom.xml | 35 ++-- apache-thrift/pom.xml | 6 +- apache-tika/pom.xml | 6 +- apache-velocity/pom.xml | 6 +- apache-zookeeper/pom.xml | 6 +- asciidoctor/pom.xml | 6 +- asm/pom.xml | 6 +- atomix/pom.xml | 6 +- aws-lambda/pom.xml | 6 +- aws-reactive/pom.xml | 171 +++++++++--------- aws/pom.xml | 6 +- axon/pom.xml | 6 +- azure/pom.xml | 6 +- bazel/bazelapp/pom.xml | 7 +- bazel/bazelgreeting/pom.xml | 7 +- bazel/pom.xml | 7 +- blade/pom.xml | 7 +- bootique/pom.xml | 6 +- cas/cas-secured-app/pom.xml | 6 +- cas/cas-server/pom.xml | 6 +- cas/pom.xml | 6 +- cdi/pom.xml | 6 +- checker-plugin/pom.xml | 17 +- .../cf-uaa-oauth2-client/pom.xml | 6 +- .../cf-uaa-oauth2-resource-server/pom.xml | 6 +- cloud-foundry-uaa/pom.xml | 6 +- code-generation/pom.xml | 6 +- core-groovy-2/pom.xml | 6 +- core-groovy-collections/pom.xml | 6 +- core-groovy/pom.xml | 6 +- core-java-modules/core-java-10/pom.xml | 6 +- core-java-modules/core-java-11/pom.xml | 14 +- core-java-modules/core-java-12/pom.xml | 7 +- core-java-modules/core-java-13/pom.xml | 4 +- core-java-modules/core-java-14/pom.xml | 7 +- core-java-modules/core-java-8-2/pom.xml | 7 +- core-java-modules/core-java-8/pom.xml | 6 +- .../core-java-9-improvements/pom.xml | 6 +- core-java-modules/core-java-9-jigsaw/pom.xml | 6 +- .../core-java-9-new-features/pom.xml | 6 +- core-java-modules/core-java-9-streams/pom.xml | 6 +- core-java-modules/core-java-9/pom.xml | 6 +- .../core-java-annotations/pom.xml | 6 +- core-java-modules/core-java-arrays-2/pom.xml | 57 +++--- core-java-modules/core-java-arrays-3/pom.xml | 51 +++--- core-java-modules/core-java-arrays/pom.xml | 12 +- .../core-java-collections-2/pom.xml | 6 +- .../core-java-collections-3/pom.xml | 6 +- .../core-java-collections-array-list/pom.xml | 6 +- .../core-java-collections-list-2/pom.xml | 6 +- .../core-java-collections-list-3/pom.xml | 6 +- .../core-java-collections-list/pom.xml | 6 +- .../core-java-collections-set/pom.xml | 6 +- .../core-java-collections/pom.xml | 6 +- .../core-java-concurrency-2/pom.xml | 6 +- .../core-java-concurrency-advanced-2/pom.xml | 6 +- .../core-java-concurrency-advanced-3/pom.xml | 15 +- .../core-java-concurrency-advanced/pom.xml | 6 +- .../core-java-concurrency-basic-2/pom.xml | 6 +- .../core-java-concurrency-basic/pom.xml | 6 +- .../core-java-concurrency-collections/pom.xml | 6 +- .../core-java-date-operations-1/pom.xml | 6 +- .../core-java-date-operations-2/pom.xml | 3 +- .../core-java-datetime-conversion/pom.xml | 6 +- .../core-java-datetime-java8-2/pom.xml | 6 +- .../core-java-datetime-java8/pom.xml | 6 +- .../core-java-datetime-string/pom.xml | 6 +- .../core-java-exceptions-2/pom.xml | 51 +++--- .../core-java-exceptions/pom.xml | 7 +- core-java-modules/core-java-function/pom.xml | 6 +- core-java-modules/core-java-io-2/pom.xml | 6 +- core-java-modules/core-java-io-apis/pom.xml | 6 +- .../core-java-io-conversions/pom.xml | 6 +- core-java-modules/core-java-io/pom.xml | 10 +- core-java-modules/core-java-jar/pom.xml | 10 +- core-java-modules/core-java-jndi/pom.xml | 9 +- .../consumermodule/pom.xml | 6 +- .../decoupling-pattern1/pom.xml | 7 +- .../decoupling-pattern1/servicemodule/pom.xml | 6 +- .../consumermodule/pom.xml | 9 +- .../decoupling-pattern2/pom.xml | 9 +- .../providermodule/pom.xml | 9 +- .../decoupling-pattern2/servicemodule/pom.xml | 7 +- core-java-modules/core-java-jpms/pom.xml | 6 +- core-java-modules/core-java-jvm/pom.xml | 6 +- core-java-modules/core-java-lambdas/pom.xml | 7 +- core-java-modules/core-java-lang-2/pom.xml | 6 +- core-java-modules/core-java-lang-math/pom.xml | 6 +- .../core-java-lang-oop-2/pom.xml | 6 +- .../core-java-lang-oop-3/pom.xml | 6 +- .../core-java-lang-oop-4/pom.xml | 6 +- core-java-modules/core-java-lang-oop/pom.xml | 6 +- .../core-java-lang-operators/pom.xml | 7 +- .../core-java-lang-syntax-2/pom.xml | 6 +- .../core-java-lang-syntax/pom.xml | 6 +- core-java-modules/core-java-lang/pom.xml | 6 +- .../core-java-networking-2/pom.xml | 6 +- .../core-java-networking/pom.xml | 6 +- core-java-modules/core-java-nio-2/pom.xml | 7 +- core-java-modules/core-java-nio/pom.xml | 7 +- core-java-modules/core-java-optional/pom.xml | 6 +- core-java-modules/core-java-os/pom.xml | 6 +- core-java-modules/core-java-perf/pom.xml | 6 +- .../core-java-reflection/pom.xml | 7 +- core-java-modules/core-java-regex/pom.xml | 6 +- .../core-java-security-2/pom.xml | 6 +- core-java-modules/core-java-security/pom.xml | 6 +- core-java-modules/core-java-streams-2/pom.xml | 6 +- core-java-modules/core-java-streams-3/pom.xml | 6 +- core-java-modules/core-java-streams/pom.xml | 6 +- .../core-java-string-algorithms-2/pom.xml | 6 +- .../core-java-string-algorithms-3/pom.xml | 101 ++++++----- .../core-java-string-algorithms/pom.xml | 6 +- .../core-java-string-apis/pom.xml | 6 +- .../core-java-string-conversions-2/pom.xml | 6 +- .../core-java-string-conversions/pom.xml | 6 +- .../core-java-string-operations-2/pom.xml | 6 +- .../core-java-string-operations/pom.xml | 6 +- core-java-modules/core-java-strings/pom.xml | 6 +- core-java-modules/core-java-sun/pom.xml | 10 +- .../core-java-time-measurements/pom.xml | 7 +- core-java-modules/core-java/pom.xml | 10 +- .../multimodulemavenproject/daomodule/pom.xml | 6 +- .../entitymodule/pom.xml | 6 +- .../mainappmodule/pom.xml | 6 +- .../userdaomodule/pom.xml | 6 +- core-java-modules/pom.xml | 19 +- core-java-modules/pre-jpms/pom.xml | 9 +- parent-boot-1/pom.xml | 6 +- parent-boot-2/pom.xml | 6 +- parent-java/pom.xml | 6 +- parent-kotlin/pom.xml | 6 +- parent-spring-4/pom.xml | 6 +- parent-spring-5/pom.xml | 7 +- spring-5-reactive-client/pom.xml | 6 +- webrtc/pom.xml | 3 +- wicket/pom.xml | 6 +- wildfly/pom.xml | 6 +- xml/pom.xml | 16 +- xstream/pom.xml | 6 +- 178 files changed, 948 insertions(+), 663 deletions(-) diff --git a/akka-http/pom.xml b/akka-http/pom.xml index e276ef1aa4..c0b460dd8e 100644 --- a/akka-http/pom.xml +++ b/akka-http/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 akka-http akka-http diff --git a/akka-streams/pom.xml b/akka-streams/pom.xml index 967556d976..f87f9dd667 100644 --- a/akka-streams/pom.xml +++ b/akka-streams/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 akka-streams akka-streams diff --git a/algorithms-genetic/pom.xml b/algorithms-genetic/pom.xml index eeccb89d6f..942acd69c6 100644 --- a/algorithms-genetic/pom.xml +++ b/algorithms-genetic/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-genetic 0.0.1-SNAPSHOT diff --git a/algorithms-miscellaneous-1/pom.xml b/algorithms-miscellaneous-1/pom.xml index b7c32bda43..d9ecbd78e8 100644 --- a/algorithms-miscellaneous-1/pom.xml +++ b/algorithms-miscellaneous-1/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-miscellaneous-1 0.0.1-SNAPSHOT diff --git a/algorithms-miscellaneous-2/pom.xml b/algorithms-miscellaneous-2/pom.xml index e4f4e5c2ea..7144a7a391 100644 --- a/algorithms-miscellaneous-2/pom.xml +++ b/algorithms-miscellaneous-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-miscellaneous-2 0.0.1-SNAPSHOT diff --git a/algorithms-miscellaneous-3/pom.xml b/algorithms-miscellaneous-3/pom.xml index 673ac0121d..877e8bfefa 100644 --- a/algorithms-miscellaneous-3/pom.xml +++ b/algorithms-miscellaneous-3/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-miscellaneous-3 0.0.1-SNAPSHOT diff --git a/algorithms-miscellaneous-4/pom.xml b/algorithms-miscellaneous-4/pom.xml index 682234ad07..50fef5ff71 100644 --- a/algorithms-miscellaneous-4/pom.xml +++ b/algorithms-miscellaneous-4/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-miscellaneous-4 0.0.1-SNAPSHOT diff --git a/algorithms-miscellaneous-5/pom.xml b/algorithms-miscellaneous-5/pom.xml index 2799c39971..f2db71a6da 100644 --- a/algorithms-miscellaneous-5/pom.xml +++ b/algorithms-miscellaneous-5/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-miscellaneous-5 0.0.1-SNAPSHOT diff --git a/algorithms-searching/pom.xml b/algorithms-searching/pom.xml index da32874a18..80443155ff 100644 --- a/algorithms-searching/pom.xml +++ b/algorithms-searching/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-searching 0.0.1-SNAPSHOT diff --git a/algorithms-sorting-2/pom.xml b/algorithms-sorting-2/pom.xml index d862c91430..529474afda 100644 --- a/algorithms-sorting-2/pom.xml +++ b/algorithms-sorting-2/pom.xml @@ -1,5 +1,7 @@ - + 4.0.0 algorithms-sorting-2 0.0.1-SNAPSHOT diff --git a/algorithms-sorting/pom.xml b/algorithms-sorting/pom.xml index 84856235d9..2de8eed04e 100644 --- a/algorithms-sorting/pom.xml +++ b/algorithms-sorting/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 algorithms-sorting 0.0.1-SNAPSHOT diff --git a/animal-sniffer-mvn-plugin/pom.xml b/animal-sniffer-mvn-plugin/pom.xml index d04581aaac..82726aa7bc 100644 --- a/animal-sniffer-mvn-plugin/pom.xml +++ b/animal-sniffer-mvn-plugin/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 animal-sniffer-mvn-plugin 1.0-SNAPSHOT @@ -44,5 +46,5 @@ 1.16 1.0 - + \ No newline at end of file diff --git a/annotations/annotation-processing/pom.xml b/annotations/annotation-processing/pom.xml index 645bbd7a0f..f94cee04f0 100644 --- a/annotations/annotation-processing/pom.xml +++ b/annotations/annotation-processing/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 annotation-processing annotation-processing diff --git a/annotations/annotation-user/pom.xml b/annotations/annotation-user/pom.xml index ae47e19f05..f38e93528d 100644 --- a/annotations/annotation-user/pom.xml +++ b/annotations/annotation-user/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 annotation-user annotation-user diff --git a/annotations/pom.xml b/annotations/pom.xml index 41e1e8735b..c3c23cf5ab 100644 --- a/annotations/pom.xml +++ b/annotations/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 annotations annotations diff --git a/antlr/pom.xml b/antlr/pom.xml index 641382d450..c8e48706fb 100644 --- a/antlr/pom.xml +++ b/antlr/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 antlr antlr @@ -58,5 +60,5 @@ 4.7.1 3.0.0 - + \ No newline at end of file diff --git a/apache-avro/pom.xml b/apache-avro/pom.xml index 35898711c8..ad32ebb702 100644 --- a/apache-avro/pom.xml +++ b/apache-avro/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 apache-avro 0.0.1-SNAPSHOT diff --git a/apache-bval/pom.xml b/apache-bval/pom.xml index 4254242e55..49484f4959 100644 --- a/apache-bval/pom.xml +++ b/apache-bval/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-bval 0.0.1-SNAPSHOT diff --git a/apache-curator/pom.xml b/apache-curator/pom.xml index ea8fb358ad..5b249127d9 100644 --- a/apache-curator/pom.xml +++ b/apache-curator/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-curator 0.0.1-SNAPSHOT diff --git a/apache-cxf/cxf-aegis/pom.xml b/apache-cxf/cxf-aegis/pom.xml index 6e6c5b093c..c10f019f82 100644 --- a/apache-cxf/cxf-aegis/pom.xml +++ b/apache-cxf/cxf-aegis/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cxf-aegis cxf-aegis diff --git a/apache-cxf/cxf-introduction/pom.xml b/apache-cxf/cxf-introduction/pom.xml index 0572b01a9d..be604fa401 100644 --- a/apache-cxf/cxf-introduction/pom.xml +++ b/apache-cxf/cxf-introduction/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cxf-introduction cxf-introduction diff --git a/apache-cxf/cxf-jaxrs-implementation/pom.xml b/apache-cxf/cxf-jaxrs-implementation/pom.xml index 37b81882bb..7b77969075 100644 --- a/apache-cxf/cxf-jaxrs-implementation/pom.xml +++ b/apache-cxf/cxf-jaxrs-implementation/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cxf-jaxrs-implementation cxf-jaxrs-implementation diff --git a/apache-cxf/cxf-spring/pom.xml b/apache-cxf/cxf-spring/pom.xml index 01ee7d9411..f9581515b2 100644 --- a/apache-cxf/cxf-spring/pom.xml +++ b/apache-cxf/cxf-spring/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cxf-spring cxf-spring diff --git a/apache-cxf/pom.xml b/apache-cxf/pom.xml index c993eff3a5..3d64000c2e 100644 --- a/apache-cxf/pom.xml +++ b/apache-cxf/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-cxf 0.0.1-SNAPSHOT diff --git a/apache-cxf/sse-jaxrs/pom.xml b/apache-cxf/sse-jaxrs/pom.xml index 89bd5d4191..5c46547b9a 100644 --- a/apache-cxf/sse-jaxrs/pom.xml +++ b/apache-cxf/sse-jaxrs/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 sse-jaxrs sse-jaxrs diff --git a/apache-cxf/sse-jaxrs/sse-jaxrs-client/pom.xml b/apache-cxf/sse-jaxrs/sse-jaxrs-client/pom.xml index 37a068003c..92a6165f04 100644 --- a/apache-cxf/sse-jaxrs/sse-jaxrs-client/pom.xml +++ b/apache-cxf/sse-jaxrs/sse-jaxrs-client/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 sse-jaxrs-client sse-jaxrs-client diff --git a/apache-cxf/sse-jaxrs/sse-jaxrs-server/pom.xml b/apache-cxf/sse-jaxrs/sse-jaxrs-server/pom.xml index 1d7ecdb58f..efebb328a2 100644 --- a/apache-cxf/sse-jaxrs/sse-jaxrs-server/pom.xml +++ b/apache-cxf/sse-jaxrs/sse-jaxrs-server/pom.xml @@ -1,12 +1,13 @@ - + 4.0.0 sse-jaxrs-server sse-jaxrs-server war - + com.baeldung sse-jaxrs diff --git a/apache-fop/pom.xml b/apache-fop/pom.xml index 41a6761eaf..fdcfe2c538 100644 --- a/apache-fop/pom.xml +++ b/apache-fop/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-fop 0.1-SNAPSHOT diff --git a/apache-geode/pom.xml b/apache-geode/pom.xml index 78c6390f80..fc5b253c01 100644 --- a/apache-geode/pom.xml +++ b/apache-geode/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 apache-geode 1.0-SNAPSHOT diff --git a/apache-meecrowave/pom.xml b/apache-meecrowave/pom.xml index 9e79780e22..e046599be3 100644 --- a/apache-meecrowave/pom.xml +++ b/apache-meecrowave/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-meecrowave 0.0.1 diff --git a/apache-olingo/olingo2/pom.xml b/apache-olingo/olingo2/pom.xml index 4689fa0ca9..3456d4f362 100644 --- a/apache-olingo/olingo2/pom.xml +++ b/apache-olingo/olingo2/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.examples.olingo2 olingo2 diff --git a/apache-opennlp/pom.xml b/apache-opennlp/pom.xml index 701d33c6fd..07ce14b4fd 100644 --- a/apache-opennlp/pom.xml +++ b/apache-opennlp/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-opennlp 1.0-SNAPSHOT diff --git a/apache-poi/pom.xml b/apache-poi/pom.xml index 333339ed33..eb72531787 100644 --- a/apache-poi/pom.xml +++ b/apache-poi/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-poi 0.0.1-SNAPSHOT diff --git a/apache-pulsar/pom.xml b/apache-pulsar/pom.xml index 206e1ab74d..568389f9f5 100644 --- a/apache-pulsar/pom.xml +++ b/apache-pulsar/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.pulsar apache-pulsar diff --git a/apache-rocketmq/pom.xml b/apache-rocketmq/pom.xml index f15dd0e61c..ba395ff054 100644 --- a/apache-rocketmq/pom.xml +++ b/apache-rocketmq/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 apache-rocketmq 1.0-SNAPSHOT diff --git a/apache-shiro/pom.xml b/apache-shiro/pom.xml index 0458ba783f..d519ba42af 100644 --- a/apache-shiro/pom.xml +++ b/apache-shiro/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 apache-shiro 1.0-SNAPSHOT diff --git a/apache-solrj/pom.xml b/apache-solrj/pom.xml index b25fd0fb04..165cd9571b 100644 --- a/apache-solrj/pom.xml +++ b/apache-solrj/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-solrj 0.0.1-SNAPSHOT diff --git a/apache-spark/pom.xml b/apache-spark/pom.xml index 59843adc71..27768d60fc 100644 --- a/apache-spark/pom.xml +++ b/apache-spark/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 apache-spark 1.0-SNAPSHOT diff --git a/apache-tapestry/pom.xml b/apache-tapestry/pom.xml index a4124b07df..82dc34899f 100644 --- a/apache-tapestry/pom.xml +++ b/apache-tapestry/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung apache-tapestry @@ -9,9 +11,8 @@ war - + org.apache.tapestry tapestry-core @@ -32,17 +33,10 @@ - + - + org.testng testng @@ -57,8 +51,7 @@ of testing facilities designed for use with TestNG (http://testng.org/), so it's test - + javax.servlet servlet-api @@ -108,8 +101,7 @@ of testing facilities designed for use with TestNG (http://testng.org/), so it's - + true @@ -123,7 +115,7 @@ of testing facilities designed for use with TestNG (http://testng.org/), so it's - + @@ -131,8 +123,7 @@ of testing facilities designed for use with TestNG (http://testng.org/), so it's http://repository.jboss.org/nexus/content/groups/public/ - + apache-staging https://repository.apache.org/content/groups/staging/ diff --git a/apache-thrift/pom.xml b/apache-thrift/pom.xml index 409467ccc5..6d079c8c28 100644 --- a/apache-thrift/pom.xml +++ b/apache-thrift/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-thrift 0.0.1-SNAPSHOT diff --git a/apache-tika/pom.xml b/apache-tika/pom.xml index 24c904aec3..a2c3a32820 100644 --- a/apache-tika/pom.xml +++ b/apache-tika/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-tika 0.0.1-SNAPSHOT diff --git a/apache-velocity/pom.xml b/apache-velocity/pom.xml index 61d7e74498..806b36237d 100644 --- a/apache-velocity/pom.xml +++ b/apache-velocity/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-velocity 0.1-SNAPSHOT diff --git a/apache-zookeeper/pom.xml b/apache-zookeeper/pom.xml index 0bab6cded6..f441848f70 100644 --- a/apache-zookeeper/pom.xml +++ b/apache-zookeeper/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 apache-zookeeper 0.0.1-SNAPSHOT diff --git a/asciidoctor/pom.xml b/asciidoctor/pom.xml index 5421df91be..5b34f19bbb 100644 --- a/asciidoctor/pom.xml +++ b/asciidoctor/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 asciidoctor asciidoctor diff --git a/asm/pom.xml b/asm/pom.xml index 77dbab964c..f4689de8e0 100644 --- a/asm/pom.xml +++ b/asm/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.examples asm diff --git a/atomix/pom.xml b/atomix/pom.xml index 7821ef26d7..53c7a6c0ba 100644 --- a/atomix/pom.xml +++ b/atomix/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.atomix.io atomix diff --git a/aws-lambda/pom.xml b/aws-lambda/pom.xml index 12be77baef..e1d2c7df27 100644 --- a/aws-lambda/pom.xml +++ b/aws-lambda/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 aws-lambda 0.1.0-SNAPSHOT diff --git a/aws-reactive/pom.xml b/aws-reactive/pom.xml index 046825130a..950b3f373a 100644 --- a/aws-reactive/pom.xml +++ b/aws-reactive/pom.xml @@ -1,107 +1,108 @@ - - 4.0.0 - + + 4.0.0 + com.baeldung parent-modules 1.0.0-SNAPSHOT - - aws-reactive - 0.0.1-SNAPSHOT - aws-reactive - AWS Reactive Sample - - 1.8 + aws-reactive + 0.0.1-SNAPSHOT + aws-reactive + AWS Reactive Sample + + + 1.8 2.2.1.RELEASE 2.10.27 - + - - + + - - - org.springframework.boot - spring-boot-dependencies - ${spring.version} - pom - import - + + + org.springframework.boot + spring-boot-dependencies + ${spring.version} + pom + import + - - software.amazon.awssdk - bom - ${awssdk.version} - pom - import - - - + + software.amazon.awssdk + bom + ${awssdk.version} + pom + import + + + - - - org.springframework.boot - spring-boot-starter-webflux - + + + org.springframework.boot + spring-boot-starter-webflux + - - software.amazon.awssdk - s3 - compile - + + software.amazon.awssdk + s3 + compile + - - netty-nio-client - software.amazon.awssdk - compile - + + netty-nio-client + software.amazon.awssdk + compile + - - org.springframework.boot - spring-boot-starter-test - test - - - org.junit.vintage - junit-vintage-engine - - - + + org.springframework.boot + spring-boot-starter-test + test + + + org.junit.vintage + junit-vintage-engine + + + - - io.projectreactor - reactor-test - test - - - org.springframework.boot - spring-boot-devtools - runtime - - - org.springframework.boot - spring-boot-configuration-processor - - - org.projectlombok - lombok - - + + io.projectreactor + reactor-test + test + + + org.springframework.boot + spring-boot-devtools + runtime + + + org.springframework.boot + spring-boot-configuration-processor + + + org.projectlombok + lombok + + - - - - org.springframework.boot - spring-boot-maven-plugin - - - + + + + org.springframework.boot + spring-boot-maven-plugin + + + diff --git a/aws/pom.xml b/aws/pom.xml index 19057d48e9..be0cdfdd43 100644 --- a/aws/pom.xml +++ b/aws/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 aws 0.1.0-SNAPSHOT diff --git a/axon/pom.xml b/axon/pom.xml index be74b38fa6..f6c43c7cbd 100644 --- a/axon/pom.xml +++ b/axon/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 axon axon diff --git a/azure/pom.xml b/azure/pom.xml index 7134a47cd7..dc58ffa595 100644 --- a/azure/pom.xml +++ b/azure/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 azure 0.1 diff --git a/bazel/bazelapp/pom.xml b/bazel/bazelapp/pom.xml index 6440c26cd6..54519afff8 100644 --- a/bazel/bazelapp/pom.xml +++ b/bazel/bazelapp/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 bazelapp bazelapp diff --git a/bazel/bazelgreeting/pom.xml b/bazel/bazelgreeting/pom.xml index ae8a6e4080..7742f92206 100644 --- a/bazel/bazelgreeting/pom.xml +++ b/bazel/bazelgreeting/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 bazelgreeting bazelgreeting diff --git a/bazel/pom.xml b/bazel/pom.xml index b1585cc73b..6673e09dbc 100644 --- a/bazel/pom.xml +++ b/bazel/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 bazel bazel diff --git a/blade/pom.xml b/blade/pom.xml index f463c7f077..178d1afb52 100644 --- a/blade/pom.xml +++ b/blade/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 blade blade diff --git a/bootique/pom.xml b/bootique/pom.xml index 8e40b3ec8d..2cbcd671bb 100644 --- a/bootique/pom.xml +++ b/bootique/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.bootique bootique diff --git a/cas/cas-secured-app/pom.xml b/cas/cas-secured-app/pom.xml index 63d5d43417..8e6f28e3a8 100644 --- a/cas/cas-secured-app/pom.xml +++ b/cas/cas-secured-app/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cas-secured-app cas-secured-app diff --git a/cas/cas-server/pom.xml b/cas/cas-server/pom.xml index bfd8f685ac..abcf251667 100644 --- a/cas/cas-server/pom.xml +++ b/cas/cas-server/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cas-server 1.0 diff --git a/cas/pom.xml b/cas/pom.xml index f458b23797..77fae3b50a 100644 --- a/cas/pom.xml +++ b/cas/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cas cas diff --git a/cdi/pom.xml b/cdi/pom.xml index 32b9c8a360..fec12a9b16 100644 --- a/cdi/pom.xml +++ b/cdi/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cdi 1.0-SNAPSHOT diff --git a/checker-plugin/pom.xml b/checker-plugin/pom.xml index 0140d7951a..9820d8b602 100644 --- a/checker-plugin/pom.xml +++ b/checker-plugin/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 checker-plugin 1.0-SNAPSHOT @@ -66,13 +68,10 @@ -Xbootclasspath/p:${annotatedJdk} - + - + -Awarns @@ -85,9 +84,7 @@ ${org.checkerframework:jdk8:jar} - + 2.3.1 2.3.1 2.3.1 diff --git a/cloud-foundry-uaa/cf-uaa-oauth2-client/pom.xml b/cloud-foundry-uaa/cf-uaa-oauth2-client/pom.xml index 1429ca8b24..8706bd3b53 100644 --- a/cloud-foundry-uaa/cf-uaa-oauth2-client/pom.xml +++ b/cloud-foundry-uaa/cf-uaa-oauth2-client/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.example cf-uaa-oauth2-client diff --git a/cloud-foundry-uaa/cf-uaa-oauth2-resource-server/pom.xml b/cloud-foundry-uaa/cf-uaa-oauth2-resource-server/pom.xml index 6297c6f673..6bac4fe59a 100644 --- a/cloud-foundry-uaa/cf-uaa-oauth2-resource-server/pom.xml +++ b/cloud-foundry-uaa/cf-uaa-oauth2-resource-server/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.cfuaa cf-uaa-oauth2-resource-server diff --git a/cloud-foundry-uaa/pom.xml b/cloud-foundry-uaa/pom.xml index 0001e521ed..a8a46b921d 100644 --- a/cloud-foundry-uaa/pom.xml +++ b/cloud-foundry-uaa/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 cloud-foundry-uaa 0.0.1-SNAPSHOT diff --git a/code-generation/pom.xml b/code-generation/pom.xml index 7cc076c58f..c5feef2426 100644 --- a/code-generation/pom.xml +++ b/code-generation/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 code-generation 1.0 diff --git a/core-groovy-2/pom.xml b/core-groovy-2/pom.xml index 1b26182ef4..a01560781b 100644 --- a/core-groovy-2/pom.xml +++ b/core-groovy-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-groovy-2 1.0-SNAPSHOT diff --git a/core-groovy-collections/pom.xml b/core-groovy-collections/pom.xml index 4e591970b0..125dfca4c1 100644 --- a/core-groovy-collections/pom.xml +++ b/core-groovy-collections/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-groovy-collections 1.0-SNAPSHOT diff --git a/core-groovy/pom.xml b/core-groovy/pom.xml index 6407f7c0c6..69833ff74d 100644 --- a/core-groovy/pom.xml +++ b/core-groovy/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-groovy 1.0-SNAPSHOT diff --git a/core-java-modules/core-java-10/pom.xml b/core-java-modules/core-java-10/pom.xml index 49ebbfb283..a9b991852f 100644 --- a/core-java-modules/core-java-10/pom.xml +++ b/core-java-modules/core-java-10/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-10 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-11/pom.xml b/core-java-modules/core-java-11/pom.xml index 2dfc72db09..bbc4219eaa 100644 --- a/core-java-modules/core-java-11/pom.xml +++ b/core-java-modules/core-java-11/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-11 0.1.0-SNAPSHOT @@ -78,14 +79,11 @@ org.openjdk.jmh.Main - + - + *:* META-INF/*.SF diff --git a/core-java-modules/core-java-12/pom.xml b/core-java-modules/core-java-12/pom.xml index 171d3f6e73..373f23488e 100644 --- a/core-java-modules/core-java-12/pom.xml +++ b/core-java-modules/core-java-12/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-12 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-13/pom.xml b/core-java-modules/core-java-13/pom.xml index 9469f49411..4537067567 100644 --- a/core-java-modules/core-java-13/pom.xml +++ b/core-java-modules/core-java-13/pom.xml @@ -1,5 +1,7 @@ - 4.0.0 com.baeldung diff --git a/core-java-modules/core-java-14/pom.xml b/core-java-modules/core-java-14/pom.xml index 4f89e87d02..96cb6b37e7 100644 --- a/core-java-modules/core-java-14/pom.xml +++ b/core-java-modules/core-java-14/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-14 core-java-14 diff --git a/core-java-modules/core-java-8-2/pom.xml b/core-java-modules/core-java-8-2/pom.xml index 746755f7a9..00579c49b2 100644 --- a/core-java-modules/core-java-8-2/pom.xml +++ b/core-java-modules/core-java-8-2/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-8-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-8/pom.xml b/core-java-modules/core-java-8/pom.xml index 2a563333ad..a434be028d 100644 --- a/core-java-modules/core-java-8/pom.xml +++ b/core-java-modules/core-java-8/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-8 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-9-improvements/pom.xml b/core-java-modules/core-java-9-improvements/pom.xml index 9958bf9364..d1c6bac9ec 100644 --- a/core-java-modules/core-java-9-improvements/pom.xml +++ b/core-java-modules/core-java-9-improvements/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-9-improvements 0.2-SNAPSHOT diff --git a/core-java-modules/core-java-9-jigsaw/pom.xml b/core-java-modules/core-java-9-jigsaw/pom.xml index ecb36c365d..6ad4c3d510 100644 --- a/core-java-modules/core-java-9-jigsaw/pom.xml +++ b/core-java-modules/core-java-9-jigsaw/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-9-jigsaw 0.2-SNAPSHOT diff --git a/core-java-modules/core-java-9-new-features/pom.xml b/core-java-modules/core-java-9-new-features/pom.xml index 9db1112f1d..b0fb6ab7f9 100644 --- a/core-java-modules/core-java-9-new-features/pom.xml +++ b/core-java-modules/core-java-9-new-features/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-9-new-features 0.2-SNAPSHOT diff --git a/core-java-modules/core-java-9-streams/pom.xml b/core-java-modules/core-java-9-streams/pom.xml index 99be29f2b0..7865b336a7 100644 --- a/core-java-modules/core-java-9-streams/pom.xml +++ b/core-java-modules/core-java-9-streams/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-9-streams 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-9/pom.xml b/core-java-modules/core-java-9/pom.xml index a90ad0a740..b6dff0a3a4 100644 --- a/core-java-modules/core-java-9/pom.xml +++ b/core-java-modules/core-java-9/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-9 0.2-SNAPSHOT diff --git a/core-java-modules/core-java-annotations/pom.xml b/core-java-modules/core-java-annotations/pom.xml index a97686a5b5..8fc4c15cde 100644 --- a/core-java-modules/core-java-annotations/pom.xml +++ b/core-java-modules/core-java-annotations/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-annotations 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-arrays-2/pom.xml b/core-java-modules/core-java-arrays-2/pom.xml index b300de511a..1445a322d7 100644 --- a/core-java-modules/core-java-arrays-2/pom.xml +++ b/core-java-modules/core-java-arrays-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-arrays-2 0.1.0-SNAPSHOT @@ -20,7 +22,7 @@ commons-lang3 ${commons-lang3.version} - + org.openjdk.jmh jmh-core ${jmh.version} @@ -47,34 +49,33 @@ true - - - org.apache.maven.plugins - maven-shade-plugin - ${shade.plugin.version} - - - package - - shade - - - benchmarks - - - org.openjdk.jmh.Main - - - - - - - + + + org.apache.maven.plugins + maven-shade-plugin + ${shade.plugin.version} + + + package + + shade + + + benchmarks + + + org.openjdk.jmh.Main + + + + + + + - 1.19 + 1.19 3.9 diff --git a/core-java-modules/core-java-arrays-3/pom.xml b/core-java-modules/core-java-arrays-3/pom.xml index 516d9b2b37..210375b878 100644 --- a/core-java-modules/core-java-arrays-3/pom.xml +++ b/core-java-modules/core-java-arrays-3/pom.xml @@ -1,31 +1,32 @@ - - 4.0.0 - core-java-arrays-3 - 0.1.0-SNAPSHOT - core-java-arrays-3 - jar + + 4.0.0 + core-java-arrays-3 + 0.1.0-SNAPSHOT + core-java-arrays-3 + jar - - com.baeldung - parent-java - 0.0.1-SNAPSHOT - ../../parent-java - + + com.baeldung + parent-java + 0.0.1-SNAPSHOT + ../../parent-java + - - - org.assertj - assertj-core - ${assertj.version} - test - - + + + org.assertj + assertj-core + ${assertj.version} + test + + - - 3.14.0 - + + 3.14.0 + \ No newline at end of file diff --git a/core-java-modules/core-java-arrays/pom.xml b/core-java-modules/core-java-arrays/pom.xml index 145b711135..ea28eb25eb 100644 --- a/core-java-modules/core-java-arrays/pom.xml +++ b/core-java-modules/core-java-arrays/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-arrays 0.1.0-SNAPSHOT @@ -66,7 +68,7 @@ - + org.codehaus.mojo exec-maven-plugin @@ -78,7 +80,7 @@ -Xmx300m -XX:+UseParallelGC -classpath - + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed @@ -144,7 +146,7 @@ java -classpath - + org.openjdk.jmh.Main .* diff --git a/core-java-modules/core-java-collections-2/pom.xml b/core-java-modules/core-java-collections-2/pom.xml index e0e7dd5c82..3a7c70b1a2 100644 --- a/core-java-modules/core-java-collections-2/pom.xml +++ b/core-java-modules/core-java-collections-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections-2 core-java-collections-2 diff --git a/core-java-modules/core-java-collections-3/pom.xml b/core-java-modules/core-java-collections-3/pom.xml index f94ff6f71f..1e1695c8bc 100644 --- a/core-java-modules/core-java-collections-3/pom.xml +++ b/core-java-modules/core-java-collections-3/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections-3 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-collections-array-list/pom.xml b/core-java-modules/core-java-collections-array-list/pom.xml index cf7889fa58..74a6513cac 100644 --- a/core-java-modules/core-java-collections-array-list/pom.xml +++ b/core-java-modules/core-java-collections-array-list/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections-array-list 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-collections-list-2/pom.xml b/core-java-modules/core-java-collections-list-2/pom.xml index 05b82a179b..3184da1294 100644 --- a/core-java-modules/core-java-collections-list-2/pom.xml +++ b/core-java-modules/core-java-collections-list-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections-list-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-collections-list-3/pom.xml b/core-java-modules/core-java-collections-list-3/pom.xml index ced8a732c1..090e756ac6 100644 --- a/core-java-modules/core-java-collections-list-3/pom.xml +++ b/core-java-modules/core-java-collections-list-3/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections-list-3 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-collections-list/pom.xml b/core-java-modules/core-java-collections-list/pom.xml index 3227c94e78..e6dce5a0db 100644 --- a/core-java-modules/core-java-collections-list/pom.xml +++ b/core-java-modules/core-java-collections-list/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections-list 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-collections-set/pom.xml b/core-java-modules/core-java-collections-set/pom.xml index d21bbeef77..8ba1b2400d 100644 --- a/core-java-modules/core-java-collections-set/pom.xml +++ b/core-java-modules/core-java-collections-set/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections-set 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-collections/pom.xml b/core-java-modules/core-java-collections/pom.xml index c9cbe94a4f..515d19d7fb 100644 --- a/core-java-modules/core-java-collections/pom.xml +++ b/core-java-modules/core-java-collections/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-collections 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-concurrency-2/pom.xml b/core-java-modules/core-java-concurrency-2/pom.xml index 690fe97ae6..a9a01b70f3 100644 --- a/core-java-modules/core-java-concurrency-2/pom.xml +++ b/core-java-modules/core-java-concurrency-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-concurrency-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-concurrency-advanced-2/pom.xml b/core-java-modules/core-java-concurrency-advanced-2/pom.xml index 7e76219c4e..8752e7b7db 100644 --- a/core-java-modules/core-java-concurrency-advanced-2/pom.xml +++ b/core-java-modules/core-java-concurrency-advanced-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-concurrency-advanced-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-concurrency-advanced-3/pom.xml b/core-java-modules/core-java-concurrency-advanced-3/pom.xml index 8f275f4043..cf81214125 100644 --- a/core-java-modules/core-java-concurrency-advanced-3/pom.xml +++ b/core-java-modules/core-java-concurrency-advanced-3/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-concurrency-advanced-3 @@ -23,26 +24,26 @@ ${assertj.version} test - + com.jcabi jcabi-aspects ${jcabi-aspects.version} - + org.aspectj aspectjrt ${aspectjrt.version} runtime - + com.google.guava guava ${guava.version} - + org.cactoos cactoos diff --git a/core-java-modules/core-java-concurrency-advanced/pom.xml b/core-java-modules/core-java-concurrency-advanced/pom.xml index 65ca811737..d39712468f 100644 --- a/core-java-modules/core-java-concurrency-advanced/pom.xml +++ b/core-java-modules/core-java-concurrency-advanced/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-concurrency-advanced 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-concurrency-basic-2/pom.xml b/core-java-modules/core-java-concurrency-basic-2/pom.xml index 0fee2c04ff..8c9bbef54c 100644 --- a/core-java-modules/core-java-concurrency-basic-2/pom.xml +++ b/core-java-modules/core-java-concurrency-basic-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-concurrency-basic-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-concurrency-basic/pom.xml b/core-java-modules/core-java-concurrency-basic/pom.xml index 9d9d2cb663..c15200da1f 100644 --- a/core-java-modules/core-java-concurrency-basic/pom.xml +++ b/core-java-modules/core-java-concurrency-basic/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-concurrency-basic 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-concurrency-collections/pom.xml b/core-java-modules/core-java-concurrency-collections/pom.xml index f731b1acd1..5c038639a7 100644 --- a/core-java-modules/core-java-concurrency-collections/pom.xml +++ b/core-java-modules/core-java-concurrency-collections/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-concurrency-collections 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-date-operations-1/pom.xml b/core-java-modules/core-java-date-operations-1/pom.xml index 83216f1ad8..54cbc79678 100644 --- a/core-java-modules/core-java-date-operations-1/pom.xml +++ b/core-java-modules/core-java-date-operations-1/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-date-operations-1 ${project.parent.version} diff --git a/core-java-modules/core-java-date-operations-2/pom.xml b/core-java-modules/core-java-date-operations-2/pom.xml index 155b8ad0b7..ea5f852b0d 100644 --- a/core-java-modules/core-java-date-operations-2/pom.xml +++ b/core-java-modules/core-java-date-operations-2/pom.xml @@ -1,5 +1,6 @@ - 4.0.0 diff --git a/core-java-modules/core-java-datetime-conversion/pom.xml b/core-java-modules/core-java-datetime-conversion/pom.xml index e2b143aa88..e2dd579335 100644 --- a/core-java-modules/core-java-datetime-conversion/pom.xml +++ b/core-java-modules/core-java-datetime-conversion/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-datetime-conversion ${project.parent.version} diff --git a/core-java-modules/core-java-datetime-java8-2/pom.xml b/core-java-modules/core-java-datetime-java8-2/pom.xml index 34323fe76c..a15113bddc 100644 --- a/core-java-modules/core-java-datetime-java8-2/pom.xml +++ b/core-java-modules/core-java-datetime-java8-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-datetime-java8 ${project.parent.version} diff --git a/core-java-modules/core-java-datetime-java8/pom.xml b/core-java-modules/core-java-datetime-java8/pom.xml index 34323fe76c..a15113bddc 100644 --- a/core-java-modules/core-java-datetime-java8/pom.xml +++ b/core-java-modules/core-java-datetime-java8/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-datetime-java8 ${project.parent.version} diff --git a/core-java-modules/core-java-datetime-string/pom.xml b/core-java-modules/core-java-datetime-string/pom.xml index dd793f7fe8..ceb7641320 100644 --- a/core-java-modules/core-java-datetime-string/pom.xml +++ b/core-java-modules/core-java-datetime-string/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-datetime-string ${project.parent.version} diff --git a/core-java-modules/core-java-exceptions-2/pom.xml b/core-java-modules/core-java-exceptions-2/pom.xml index 955d7153fa..cf8de3d5b6 100644 --- a/core-java-modules/core-java-exceptions-2/pom.xml +++ b/core-java-modules/core-java-exceptions-2/pom.xml @@ -1,36 +1,37 @@ - - 4.0.0 + + 4.0.0 - core-java-exceptions-2 - core-java-exceptions-2 - jar + core-java-exceptions-2 + core-java-exceptions-2 + jar - - com.baeldung - parent-java - 0.0.1-SNAPSHOT - ../../parent-java - - - - - + + com.baeldung + parent-java + 0.0.1-SNAPSHOT + ../../parent-java + + + + + org.assertj assertj-core ${assertj-core.version} test - + - - http://maven.apache.org + + http://maven.apache.org - - UTF-8 - - 3.10.0 - + + UTF-8 + + 3.10.0 + diff --git a/core-java-modules/core-java-exceptions/pom.xml b/core-java-modules/core-java-exceptions/pom.xml index 303a09d5b7..60c5e2650a 100644 --- a/core-java-modules/core-java-exceptions/pom.xml +++ b/core-java-modules/core-java-exceptions/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.exceptions core-java-exceptions diff --git a/core-java-modules/core-java-function/pom.xml b/core-java-modules/core-java-function/pom.xml index 0e61f73c84..1a853d5580 100644 --- a/core-java-modules/core-java-function/pom.xml +++ b/core-java-modules/core-java-function/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-function 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-io-2/pom.xml b/core-java-modules/core-java-io-2/pom.xml index 0c271737d9..ee7d82b610 100644 --- a/core-java-modules/core-java-io-2/pom.xml +++ b/core-java-modules/core-java-io-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-io-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-io-apis/pom.xml b/core-java-modules/core-java-io-apis/pom.xml index 6eb869c537..9628027309 100644 --- a/core-java-modules/core-java-io-apis/pom.xml +++ b/core-java-modules/core-java-io-apis/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-io-apis 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-io-conversions/pom.xml b/core-java-modules/core-java-io-conversions/pom.xml index c3a1b2fe2d..f5ccaa45a3 100644 --- a/core-java-modules/core-java-io-conversions/pom.xml +++ b/core-java-modules/core-java-io-conversions/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-io-conversions 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-io/pom.xml b/core-java-modules/core-java-io/pom.xml index 1c568a610d..103a809f90 100644 --- a/core-java-modules/core-java-io/pom.xml +++ b/core-java-modules/core-java-io/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-io 0.1.0-SNAPSHOT @@ -73,7 +75,7 @@ -Xmx300m -XX:+UseParallelGC -classpath - + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed @@ -127,7 +129,7 @@ java -classpath - + org.openjdk.jmh.Main .* diff --git a/core-java-modules/core-java-jar/pom.xml b/core-java-modules/core-java-jar/pom.xml index d035ee33e2..1d87bcda5f 100644 --- a/core-java-modules/core-java-jar/pom.xml +++ b/core-java-modules/core-java-jar/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-jar 0.1.0-SNAPSHOT @@ -196,7 +198,7 @@ -Xmx300m -XX:+UseParallelGC -classpath - + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed @@ -262,7 +264,7 @@ java -classpath - + org.openjdk.jmh.Main .* diff --git a/core-java-modules/core-java-jndi/pom.xml b/core-java-modules/core-java-jndi/pom.xml index 482d07a999..4a491a1a47 100644 --- a/core-java-modules/core-java-jndi/pom.xml +++ b/core-java-modules/core-java-jndi/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.jndi core-java-jndi @@ -72,7 +73,7 @@ - + 5.0.9.RELEASE 1.4.199 diff --git a/core-java-modules/core-java-jpms/decoupling-pattern1/consumermodule/pom.xml b/core-java-modules/core-java-jpms/decoupling-pattern1/consumermodule/pom.xml index e708502dee..fe6689dcc3 100644 --- a/core-java-modules/core-java-jpms/decoupling-pattern1/consumermodule/pom.xml +++ b/core-java-modules/core-java-jpms/decoupling-pattern1/consumermodule/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 consumermodule 1.0 diff --git a/core-java-modules/core-java-jpms/decoupling-pattern1/pom.xml b/core-java-modules/core-java-jpms/decoupling-pattern1/pom.xml index 3c03643a2c..fd59c151e6 100644 --- a/core-java-modules/core-java-jpms/decoupling-pattern1/pom.xml +++ b/core-java-modules/core-java-jpms/decoupling-pattern1/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.decoupling-pattern1 decoupling-pattern1 diff --git a/core-java-modules/core-java-jpms/decoupling-pattern1/servicemodule/pom.xml b/core-java-modules/core-java-jpms/decoupling-pattern1/servicemodule/pom.xml index 3fe6f735eb..c2da228ce6 100644 --- a/core-java-modules/core-java-jpms/decoupling-pattern1/servicemodule/pom.xml +++ b/core-java-modules/core-java-jpms/decoupling-pattern1/servicemodule/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 servicemodule jar diff --git a/core-java-modules/core-java-jpms/decoupling-pattern2/consumermodule/pom.xml b/core-java-modules/core-java-jpms/decoupling-pattern2/consumermodule/pom.xml index a042ee4562..e6b351b1b9 100644 --- a/core-java-modules/core-java-jpms/decoupling-pattern2/consumermodule/pom.xml +++ b/core-java-modules/core-java-jpms/decoupling-pattern2/consumermodule/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.consumermodule consumermodule @@ -34,7 +35,7 @@ - + 1.0 1.0 diff --git a/core-java-modules/core-java-jpms/decoupling-pattern2/pom.xml b/core-java-modules/core-java-jpms/decoupling-pattern2/pom.xml index f6b4e5b0df..17bca54edb 100644 --- a/core-java-modules/core-java-jpms/decoupling-pattern2/pom.xml +++ b/core-java-modules/core-java-jpms/decoupling-pattern2/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.decoupling-pattern2 decoupling-pattern2 @@ -29,7 +30,7 @@ - + 3.8.0 11 diff --git a/core-java-modules/core-java-jpms/decoupling-pattern2/providermodule/pom.xml b/core-java-modules/core-java-jpms/decoupling-pattern2/providermodule/pom.xml index 20e97fca0f..3e8d5c0c39 100644 --- a/core-java-modules/core-java-jpms/decoupling-pattern2/providermodule/pom.xml +++ b/core-java-modules/core-java-jpms/decoupling-pattern2/providermodule/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.providermodule providermodule @@ -32,7 +33,7 @@ 1.0 - + \ No newline at end of file diff --git a/core-java-modules/core-java-jpms/decoupling-pattern2/servicemodule/pom.xml b/core-java-modules/core-java-jpms/decoupling-pattern2/servicemodule/pom.xml index f65ebb0b55..51d64998df 100644 --- a/core-java-modules/core-java-jpms/decoupling-pattern2/servicemodule/pom.xml +++ b/core-java-modules/core-java-jpms/decoupling-pattern2/servicemodule/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 servicemodule 1.0 diff --git a/core-java-modules/core-java-jpms/pom.xml b/core-java-modules/core-java-jpms/pom.xml index dfb3c71229..4610baab49 100644 --- a/core-java-modules/core-java-jpms/pom.xml +++ b/core-java-modules/core-java-jpms/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-jpms 0.0.1-SNAPSHOT diff --git a/core-java-modules/core-java-jvm/pom.xml b/core-java-modules/core-java-jvm/pom.xml index 61c31ce82f..edf7a4f3c5 100644 --- a/core-java-modules/core-java-jvm/pom.xml +++ b/core-java-modules/core-java-jvm/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-jvm 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lambdas/pom.xml b/core-java-modules/core-java-lambdas/pom.xml index fbcd9d5870..421ca2f394 100644 --- a/core-java-modules/core-java-lambdas/pom.xml +++ b/core-java-modules/core-java-lambdas/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-lambdas 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-2/pom.xml b/core-java-modules/core-java-lang-2/pom.xml index a5fb5ca859..5aa80ce3df 100644 --- a/core-java-modules/core-java-lang-2/pom.xml +++ b/core-java-modules/core-java-lang-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-math/pom.xml b/core-java-modules/core-java-lang-math/pom.xml index 671d5630d2..bcb5cf39d2 100644 --- a/core-java-modules/core-java-lang-math/pom.xml +++ b/core-java-modules/core-java-lang-math/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-math 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-oop-2/pom.xml b/core-java-modules/core-java-lang-oop-2/pom.xml index 01bacab0b9..ccacaf7116 100644 --- a/core-java-modules/core-java-lang-oop-2/pom.xml +++ b/core-java-modules/core-java-lang-oop-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-oop-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-oop-3/pom.xml b/core-java-modules/core-java-lang-oop-3/pom.xml index 70939c32c9..cc9b473d03 100644 --- a/core-java-modules/core-java-lang-oop-3/pom.xml +++ b/core-java-modules/core-java-lang-oop-3/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-oop-3 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-oop-4/pom.xml b/core-java-modules/core-java-lang-oop-4/pom.xml index 9e138afddf..3c7e4f446d 100644 --- a/core-java-modules/core-java-lang-oop-4/pom.xml +++ b/core-java-modules/core-java-lang-oop-4/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-oop-4 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-oop/pom.xml b/core-java-modules/core-java-lang-oop/pom.xml index a628a4d6c2..4415784f85 100644 --- a/core-java-modules/core-java-lang-oop/pom.xml +++ b/core-java-modules/core-java-lang-oop/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-oop 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-operators/pom.xml b/core-java-modules/core-java-lang-operators/pom.xml index 03720122cb..b95caa81b8 100644 --- a/core-java-modules/core-java-lang-operators/pom.xml +++ b/core-java-modules/core-java-lang-operators/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-lang-operators 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-syntax-2/pom.xml b/core-java-modules/core-java-lang-syntax-2/pom.xml index 961cf022cb..b6da37b736 100644 --- a/core-java-modules/core-java-lang-syntax-2/pom.xml +++ b/core-java-modules/core-java-lang-syntax-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-syntax-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang-syntax/pom.xml b/core-java-modules/core-java-lang-syntax/pom.xml index c47a1011b7..106074bba6 100644 --- a/core-java-modules/core-java-lang-syntax/pom.xml +++ b/core-java-modules/core-java-lang-syntax/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang-syntax 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-lang/pom.xml b/core-java-modules/core-java-lang/pom.xml index 5b8fe4133b..44d7812c15 100644 --- a/core-java-modules/core-java-lang/pom.xml +++ b/core-java-modules/core-java-lang/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-lang 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-networking-2/pom.xml b/core-java-modules/core-java-networking-2/pom.xml index 2e2eb51809..938635b8d4 100644 --- a/core-java-modules/core-java-networking-2/pom.xml +++ b/core-java-modules/core-java-networking-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-networking-2 core-java-networking-2 diff --git a/core-java-modules/core-java-networking/pom.xml b/core-java-modules/core-java-networking/pom.xml index f5b39625f0..c22b62118d 100644 --- a/core-java-modules/core-java-networking/pom.xml +++ b/core-java-modules/core-java-networking/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-networking 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-nio-2/pom.xml b/core-java-modules/core-java-nio-2/pom.xml index cd5c87d44e..2e67bff30a 100644 --- a/core-java-modules/core-java-nio-2/pom.xml +++ b/core-java-modules/core-java-nio-2/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-nio-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-nio/pom.xml b/core-java-modules/core-java-nio/pom.xml index bc7801c398..e7605763bb 100644 --- a/core-java-modules/core-java-nio/pom.xml +++ b/core-java-modules/core-java-nio/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-nio 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-optional/pom.xml b/core-java-modules/core-java-optional/pom.xml index 9ab41d5a82..57e85109e6 100644 --- a/core-java-modules/core-java-optional/pom.xml +++ b/core-java-modules/core-java-optional/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-optional 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-os/pom.xml b/core-java-modules/core-java-os/pom.xml index b934701067..d8941cb494 100644 --- a/core-java-modules/core-java-os/pom.xml +++ b/core-java-modules/core-java-os/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-os 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-perf/pom.xml b/core-java-modules/core-java-perf/pom.xml index 18e05c9741..c1970346b5 100644 --- a/core-java-modules/core-java-perf/pom.xml +++ b/core-java-modules/core-java-perf/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-perf 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-reflection/pom.xml b/core-java-modules/core-java-reflection/pom.xml index 64086ef5b8..dca446b268 100644 --- a/core-java-modules/core-java-reflection/pom.xml +++ b/core-java-modules/core-java-reflection/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 core-java-reflection 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-regex/pom.xml b/core-java-modules/core-java-regex/pom.xml index 1c55177d70..df2382a732 100644 --- a/core-java-modules/core-java-regex/pom.xml +++ b/core-java-modules/core-java-regex/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-regex 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-security-2/pom.xml b/core-java-modules/core-java-security-2/pom.xml index 43a55e3e0d..23f0c5aab9 100644 --- a/core-java-modules/core-java-security-2/pom.xml +++ b/core-java-modules/core-java-security-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-security-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-security/pom.xml b/core-java-modules/core-java-security/pom.xml index cefbd3a8a7..a46c2e2d40 100644 --- a/core-java-modules/core-java-security/pom.xml +++ b/core-java-modules/core-java-security/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-security 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-streams-2/pom.xml b/core-java-modules/core-java-streams-2/pom.xml index 58f13d658c..1f47df63a0 100644 --- a/core-java-modules/core-java-streams-2/pom.xml +++ b/core-java-modules/core-java-streams-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-streams-2 1.0 diff --git a/core-java-modules/core-java-streams-3/pom.xml b/core-java-modules/core-java-streams-3/pom.xml index 02503d3cab..ae27e28918 100644 --- a/core-java-modules/core-java-streams-3/pom.xml +++ b/core-java-modules/core-java-streams-3/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-streams-3 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-streams/pom.xml b/core-java-modules/core-java-streams/pom.xml index 56fdd523fe..272a2be540 100644 --- a/core-java-modules/core-java-streams/pom.xml +++ b/core-java-modules/core-java-streams/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-streams 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-string-algorithms-2/pom.xml b/core-java-modules/core-java-string-algorithms-2/pom.xml index a67f1df6d2..f05674034a 100644 --- a/core-java-modules/core-java-string-algorithms-2/pom.xml +++ b/core-java-modules/core-java-string-algorithms-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-string-algorithms-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-string-algorithms-3/pom.xml b/core-java-modules/core-java-string-algorithms-3/pom.xml index 43dc040591..583fa99afd 100644 --- a/core-java-modules/core-java-string-algorithms-3/pom.xml +++ b/core-java-modules/core-java-string-algorithms-3/pom.xml @@ -1,50 +1,51 @@ - - 4.0.0 - core-java-string-algorithms-3 - 0.1.0-SNAPSHOT - jar - core-java-string-algorithms-3 + + 4.0.0 + core-java-string-algorithms-3 + 0.1.0-SNAPSHOT + jar + core-java-string-algorithms-3 - - com.baeldung - parent-java - 0.0.1-SNAPSHOT - ../../parent-java - + + com.baeldung + parent-java + 0.0.1-SNAPSHOT + ../../parent-java + - - - - org.assertj - assertj-core - ${assertj.version} - test - - - com.google.guava - guava - ${guava.version} - + + + + org.assertj + assertj-core + ${assertj.version} + test + + + com.google.guava + guava + ${guava.version} + - - org.junit.jupiter - junit-jupiter-api - ${junit-jupiter-api.version} - test - - + + org.junit.jupiter + junit-jupiter-api + ${junit-jupiter-api.version} + test + + + + + core-java-string-algorithms-3 + + + src/main/resources + true + + - - core-java-string-algorithms-3 - - - src/main/resources - true - - - org.apache.maven.plugins @@ -57,13 +58,13 @@ - + - - 3.8.1 - 3.6.1 - 28.1-jre - 5.3.1 - + + 3.8.1 + 3.6.1 + 28.1-jre + 5.3.1 + diff --git a/core-java-modules/core-java-string-algorithms/pom.xml b/core-java-modules/core-java-string-algorithms/pom.xml index 6cae320f1d..cb1a25c11b 100644 --- a/core-java-modules/core-java-string-algorithms/pom.xml +++ b/core-java-modules/core-java-string-algorithms/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-string-algorithms 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-string-apis/pom.xml b/core-java-modules/core-java-string-apis/pom.xml index 6d0fd4c6fd..c1cd439386 100644 --- a/core-java-modules/core-java-string-apis/pom.xml +++ b/core-java-modules/core-java-string-apis/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-string-apis 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-string-conversions-2/pom.xml b/core-java-modules/core-java-string-conversions-2/pom.xml index 9f2276b212..53680e4fce 100644 --- a/core-java-modules/core-java-string-conversions-2/pom.xml +++ b/core-java-modules/core-java-string-conversions-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-string-conversions-2 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-string-conversions/pom.xml b/core-java-modules/core-java-string-conversions/pom.xml index 7f8fe6468f..302e73e691 100644 --- a/core-java-modules/core-java-string-conversions/pom.xml +++ b/core-java-modules/core-java-string-conversions/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-string-conversions 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-string-operations-2/pom.xml b/core-java-modules/core-java-string-operations-2/pom.xml index b882e499b2..f36f8b0ff6 100644 --- a/core-java-modules/core-java-string-operations-2/pom.xml +++ b/core-java-modules/core-java-string-operations-2/pom.xml @@ -1,5 +1,6 @@ - 4.0.0 @@ -87,8 +88,7 @@ - + org.openjdk.jmh.Main diff --git a/core-java-modules/core-java-string-operations/pom.xml b/core-java-modules/core-java-string-operations/pom.xml index a1921c029f..a46b8ac129 100644 --- a/core-java-modules/core-java-string-operations/pom.xml +++ b/core-java-modules/core-java-string-operations/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-string-operations 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-strings/pom.xml b/core-java-modules/core-java-strings/pom.xml index 9dfe48527f..9e9bf0748b 100644 --- a/core-java-modules/core-java-strings/pom.xml +++ b/core-java-modules/core-java-strings/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-strings 0.1.0-SNAPSHOT diff --git a/core-java-modules/core-java-sun/pom.xml b/core-java-modules/core-java-sun/pom.xml index 4721eed278..d60ab71db0 100644 --- a/core-java-modules/core-java-sun/pom.xml +++ b/core-java-modules/core-java-sun/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java-sun 0.1.0-SNAPSHOT @@ -51,7 +53,7 @@ -Xmx300m -XX:+UseParallelGC -classpath - + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed @@ -81,7 +83,7 @@ java -classpath - + org.openjdk.jmh.Main .* diff --git a/core-java-modules/core-java-time-measurements/pom.xml b/core-java-modules/core-java-time-measurements/pom.xml index 9377b04690..71a012ca2b 100644 --- a/core-java-modules/core-java-time-measurements/pom.xml +++ b/core-java-modules/core-java-time-measurements/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 com.baeldung.exception.numberformat core-java-time-measurements diff --git a/core-java-modules/core-java/pom.xml b/core-java-modules/core-java/pom.xml index 06d0d85b50..9b89fffd40 100644 --- a/core-java-modules/core-java/pom.xml +++ b/core-java-modules/core-java/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 core-java 0.1.0-SNAPSHOT @@ -101,7 +103,7 @@ -Xmx300m -XX:+UseParallelGC -classpath - + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed @@ -167,7 +169,7 @@ java -classpath - + org.openjdk.jmh.Main .* diff --git a/core-java-modules/multimodulemavenproject/daomodule/pom.xml b/core-java-modules/multimodulemavenproject/daomodule/pom.xml index 79c2628ea4..15f1215d89 100644 --- a/core-java-modules/multimodulemavenproject/daomodule/pom.xml +++ b/core-java-modules/multimodulemavenproject/daomodule/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.daomodule daomodule diff --git a/core-java-modules/multimodulemavenproject/entitymodule/pom.xml b/core-java-modules/multimodulemavenproject/entitymodule/pom.xml index 2cc789ffbb..3e5a478299 100644 --- a/core-java-modules/multimodulemavenproject/entitymodule/pom.xml +++ b/core-java-modules/multimodulemavenproject/entitymodule/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.entitymodule entitymodule diff --git a/core-java-modules/multimodulemavenproject/mainappmodule/pom.xml b/core-java-modules/multimodulemavenproject/mainappmodule/pom.xml index e8a8203f33..196e58a419 100644 --- a/core-java-modules/multimodulemavenproject/mainappmodule/pom.xml +++ b/core-java-modules/multimodulemavenproject/mainappmodule/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.mainappmodule mainappmodule diff --git a/core-java-modules/multimodulemavenproject/userdaomodule/pom.xml b/core-java-modules/multimodulemavenproject/userdaomodule/pom.xml index 8f4cc3d945..f4a7e5c8f8 100644 --- a/core-java-modules/multimodulemavenproject/userdaomodule/pom.xml +++ b/core-java-modules/multimodulemavenproject/userdaomodule/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.userdaomodule userdaomodule diff --git a/core-java-modules/pom.xml b/core-java-modules/pom.xml index da700c383e..326d4bb1c5 100644 --- a/core-java-modules/pom.xml +++ b/core-java-modules/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.core-java-modules core-java-modules @@ -52,13 +54,8 @@ core-java-date-operations-2 - - + + core-java-exceptions core-java-exceptions-2 @@ -73,7 +70,7 @@ core-java-jar core-java-jndi - core-java-jvm + core-java-jvm core-java-lambdas core-java-lang @@ -93,7 +90,7 @@ core-java-nio-2 core-java-optional - + core-java-perf diff --git a/core-java-modules/pre-jpms/pom.xml b/core-java-modules/pre-jpms/pom.xml index 9833dc2ff7..18a2566e92 100644 --- a/core-java-modules/pre-jpms/pom.xml +++ b/core-java-modules/pre-jpms/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 pre-jpms 0.0.1-SNAPSHOT @@ -69,7 +70,7 @@ - + 3.1.1 3.8.0 diff --git a/parent-boot-1/pom.xml b/parent-boot-1/pom.xml index df2a7f8400..2e9c767aa2 100644 --- a/parent-boot-1/pom.xml +++ b/parent-boot-1/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 parent-boot-1 0.0.1-SNAPSHOT diff --git a/parent-boot-2/pom.xml b/parent-boot-2/pom.xml index 43911a26ad..6e9e90a6d3 100644 --- a/parent-boot-2/pom.xml +++ b/parent-boot-2/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 parent-boot-2 0.0.1-SNAPSHOT diff --git a/parent-java/pom.xml b/parent-java/pom.xml index e4ec2255c6..4828bc2abb 100644 --- a/parent-java/pom.xml +++ b/parent-java/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 parent-java 0.0.1-SNAPSHOT diff --git a/parent-kotlin/pom.xml b/parent-kotlin/pom.xml index abc871ca91..e3d67eaaf2 100644 --- a/parent-kotlin/pom.xml +++ b/parent-kotlin/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 parent-kotlin parent-kotlin diff --git a/parent-spring-4/pom.xml b/parent-spring-4/pom.xml index 3749c5016e..3f9a22fb03 100644 --- a/parent-spring-4/pom.xml +++ b/parent-spring-4/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 parent-spring-4 0.0.1-SNAPSHOT diff --git a/parent-spring-5/pom.xml b/parent-spring-5/pom.xml index 85a4645aa7..27f355bfad 100644 --- a/parent-spring-5/pom.xml +++ b/parent-spring-5/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 parent-spring-5 0.0.1-SNAPSHOT diff --git a/spring-5-reactive-client/pom.xml b/spring-5-reactive-client/pom.xml index 2981fc4f77..e3c41f8b84 100644 --- a/spring-5-reactive-client/pom.xml +++ b/spring-5-reactive-client/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 spring-5-reactive-client spring-5-reactive-client diff --git a/webrtc/pom.xml b/webrtc/pom.xml index 2a3b48b2ed..6dc98afb1c 100644 --- a/webrtc/pom.xml +++ b/webrtc/pom.xml @@ -1,5 +1,6 @@ - 4.0.0 diff --git a/wicket/pom.xml b/wicket/pom.xml index 5175eca59c..68bc2f3e6b 100644 --- a/wicket/pom.xml +++ b/wicket/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 com.baeldung.wicket.examples wicket diff --git a/wildfly/pom.xml b/wildfly/pom.xml index cdffe8b996..7b2a474c8d 100644 --- a/wildfly/pom.xml +++ b/wildfly/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 org.springframework wildfly diff --git a/xml/pom.xml b/xml/pom.xml index eb2d567957..8b2df41af6 100644 --- a/xml/pom.xml +++ b/xml/pom.xml @@ -1,7 +1,8 @@ - + 4.0.0 xml 0.1-SNAPSHOT @@ -326,8 +327,7 @@ - + maven-assembly-plugin ${project.basedir} @@ -346,10 +346,8 @@ - make-assembly - package + make-assembly + package attached diff --git a/xstream/pom.xml b/xstream/pom.xml index a703aa3774..618df1a7c2 100644 --- a/xstream/pom.xml +++ b/xstream/pom.xml @@ -1,6 +1,8 @@ - + 4.0.0 org.baeldung xstream From 5c83dddb9182c0d74ba3685d6f5c7f09f7417681 Mon Sep 17 00:00:00 2001 From: Roger Yates <587230+rojyates@users.noreply.github.com> Date: Mon, 16 Mar 2020 06:23:33 +1000 Subject: [PATCH 05/72] BAEL-3603 Update method names and variable name for PR --- .../blockingnonblocking/BlockingClientUnitTest.java | 2 +- .../NonBlockingClientUnitTest.java | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java index 3fc968ded0..cd3d688763 100644 --- a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java +++ b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/BlockingClientUnitTest.java @@ -25,7 +25,7 @@ public class BlockingClientUnitTest { } @Test - public void givenJavaIOSocket_whenReadingAndWritingWithStreams_thenReadSuccessfully() throws IOException { + public void givenJavaIOSocket_whenReadingAndWritingWithStreams_thenSuccess() throws IOException { // given an IO socket and somewhere to store our result Socket socket = new Socket("localhost", wireMockRule.port()); StringBuilder ourStore = new StringBuilder(); diff --git a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java index 47115887ab..90edee0306 100644 --- a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java +++ b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java @@ -31,7 +31,7 @@ public class NonBlockingClientUnitTest { } @Test - public void givenJavaNIOSocketChannel_whenReadingAndWriting_thenUseBuffers() throws IOException { + public void givenJavaNIOSocketChannel_whenReadingAndWritingWithBuffers_thenSuccess() throws IOException { // given a NIO SocketChannel and a charset InetSocketAddress address = new InetSocketAddress("localhost", wireMockRule.port()); SocketChannel socketChannel = SocketChannel.open(address); @@ -58,25 +58,25 @@ public class NonBlockingClientUnitTest { } @Test - public void givenJavaNIO_whenReadingAndWriting_thenSmallBuffers() throws IOException { + public void givenJavaNIOSocketChannel_whenReadingAndWritingWithSmallBuffers_thenSuccess() throws IOException { // given a NIO SocketChannel and a charset InetSocketAddress address = new InetSocketAddress("localhost", wireMockRule.port()); - SocketChannel socket = SocketChannel.open(address); + SocketChannel socketChannel = SocketChannel.open(address); Charset charset = StandardCharsets.UTF_8; // when we write and read using buffers that are too small for our message - socket.write(charset.encode(CharBuffer.wrap("GET " + REQUESTED_RESOURCE + " HTTP/1.0\r\n\r\n"))); + socketChannel.write(charset.encode(CharBuffer.wrap("GET " + REQUESTED_RESOURCE + " HTTP/1.0\r\n\r\n"))); ByteBuffer buffer = ByteBuffer.allocate(8); // or allocateDirect if we need direct memory access CharBuffer charBuffer = CharBuffer.allocate(8); CharsetDecoder decoder = charset.newDecoder(); StringBuilder ourStore = new StringBuilder(); - while (socket.read(buffer) != -1 || buffer.position() > 0) { + while (socketChannel.read(buffer) != -1 || buffer.position() > 0) { buffer.flip(); storeBufferContents(buffer, charBuffer, decoder, ourStore); buffer.compact(); } - socket.close(); + socketChannel.close(); // then we read and saved our data assertTrue(ourStore From 0b8b9715c6e1b3c6349db051f63688bf315542c0 Mon Sep 17 00:00:00 2001 From: Antonio Moreno Date: Thu, 6 Feb 2020 22:55:09 +0000 Subject: [PATCH 06/72] BAEL-3635 Intro to Alibaba Arthas Adding a case study to show Arthas. --- .../baeldung/arthas/FibonacciGenerator.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 libraries-3/src/main/java/com/baeldung/arthas/FibonacciGenerator.java diff --git a/libraries-3/src/main/java/com/baeldung/arthas/FibonacciGenerator.java b/libraries-3/src/main/java/com/baeldung/arthas/FibonacciGenerator.java new file mode 100644 index 0000000000..27cf0dacf6 --- /dev/null +++ b/libraries-3/src/main/java/com/baeldung/arthas/FibonacciGenerator.java @@ -0,0 +1,25 @@ +package com.baeldung.arthas; + +import java.io.IOException; + +import static java.lang.String.format; + +public class FibonacciGenerator { + + public static void main(String[] args) throws IOException { + System.out.println("Press a key to continue"); + System.in.read(); + for (int i = 0; i < 100; i++) { + long result = fibonacci(i); + System.out.println(format("fib(%d): %d", i, result)); + } + } + + public static long fibonacci(int n) { + if (n == 0 || n == 1) { + return 1L; + } else { + return fibonacci(n - 1) + fibonacci(n - 2); + } + } +} From 38843e814bfcee140d766957f63514e984210230 Mon Sep 17 00:00:00 2001 From: Roger Yates <587230+rojyates@users.noreply.github.com> Date: Tue, 17 Mar 2020 06:32:39 +1000 Subject: [PATCH 07/72] BAEL-3603 Update variable names --- .../NonBlockingClientUnitTest.java | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java index 90edee0306..838d456f03 100644 --- a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java +++ b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java @@ -40,14 +40,14 @@ public class NonBlockingClientUnitTest { // when we write and read using buffers socketChannel.write(charset.encode(CharBuffer.wrap("GET " + REQUESTED_RESOURCE + " HTTP/1.0\r\n\r\n"))); - ByteBuffer buffer = ByteBuffer.allocate(8); // or allocateDirect if we need direct memory access + ByteBuffer byteBuffer = ByteBuffer.allocate(8192); // or allocateDirect if we need direct memory access CharBuffer charBuffer = CharBuffer.allocate(8192); - CharsetDecoder decoder = charset.newDecoder(); + CharsetDecoder charsetDecoder = charset.newDecoder(); StringBuilder ourStore = new StringBuilder(); - while (socketChannel.read(buffer) != -1 || buffer.position() > 0) { - buffer.flip(); - storeBufferContents(buffer, charBuffer, decoder, ourStore); - buffer.compact(); + while (socketChannel.read(byteBuffer) != -1 || byteBuffer.position() > 0) { + byteBuffer.flip(); + storeBufferContents(byteBuffer, charBuffer, charsetDecoder, ourStore); + byteBuffer.compact(); } socketChannel.close(); @@ -67,14 +67,14 @@ public class NonBlockingClientUnitTest { // when we write and read using buffers that are too small for our message socketChannel.write(charset.encode(CharBuffer.wrap("GET " + REQUESTED_RESOURCE + " HTTP/1.0\r\n\r\n"))); - ByteBuffer buffer = ByteBuffer.allocate(8); // or allocateDirect if we need direct memory access + ByteBuffer byteBuffer = ByteBuffer.allocate(8); // or allocateDirect if we need direct memory access CharBuffer charBuffer = CharBuffer.allocate(8); - CharsetDecoder decoder = charset.newDecoder(); + CharsetDecoder charsetDecoder = charset.newDecoder(); StringBuilder ourStore = new StringBuilder(); - while (socketChannel.read(buffer) != -1 || buffer.position() > 0) { - buffer.flip(); - storeBufferContents(buffer, charBuffer, decoder, ourStore); - buffer.compact(); + while (socketChannel.read(byteBuffer) != -1 || byteBuffer.position() > 0) { + byteBuffer.flip(); + storeBufferContents(byteBuffer, charBuffer, charsetDecoder, ourStore); + byteBuffer.compact(); } socketChannel.close(); From 0f5889567e3dc1cb1d7fff20e855a30f81842a14 Mon Sep 17 00:00:00 2001 From: Roger Yates <587230+rojyates@users.noreply.github.com> Date: Tue, 17 Mar 2020 06:35:29 +1000 Subject: [PATCH 08/72] BAEL-3603 Update variable names --- .../blockingnonblocking/NonBlockingClientUnitTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java index 838d456f03..3e606476e6 100644 --- a/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java +++ b/core-java-modules/core-java-io-2/src/test/java/com/baeldung/blockingnonblocking/NonBlockingClientUnitTest.java @@ -84,8 +84,8 @@ public class NonBlockingClientUnitTest { .contains("It worked!")); } - void storeBufferContents(ByteBuffer buffer, CharBuffer charBuffer, CharsetDecoder decoder, StringBuilder ourStore) { - decoder.decode(buffer, charBuffer, true); + void storeBufferContents(ByteBuffer byteBuffer, CharBuffer charBuffer, CharsetDecoder charsetDecoder, StringBuilder ourStore) { + charsetDecoder.decode(byteBuffer, charBuffer, true); charBuffer.flip(); ourStore.append(charBuffer); charBuffer.clear(); From a1973baca1eac87a03cc5eea5881097d2c203625 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Tue, 17 Mar 2020 19:04:55 +0800 Subject: [PATCH 09/72] Update README.md --- custom-pmd/README.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/custom-pmd/README.md b/custom-pmd/README.md index 0c42106fe8..d49047f180 100644 --- a/custom-pmd/README.md +++ b/custom-pmd/README.md @@ -1,7 +1,3 @@ ## Custom PMD Rules This module contains articles about PMD - -### Relevant Articles: - -- [Introduction To PMD](https://www.baeldung.com/pmd) \ No newline at end of file From 148ca99aef2ae569f4bf73b33d4ba0f9bf9db4fe Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Tue, 17 Mar 2020 19:05:32 +0800 Subject: [PATCH 10/72] Delete README.md --- .../README.md | 159 ------------------ 1 file changed, 159 deletions(-) delete mode 100644 spring-swagger-codegen/spring-swagger-codegen-api-client/README.md diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/README.md b/spring-swagger-codegen/spring-swagger-codegen-api-client/README.md deleted file mode 100644 index cffab6b9c7..0000000000 --- a/spring-swagger-codegen/spring-swagger-codegen-api-client/README.md +++ /dev/null @@ -1,159 +0,0 @@ -## Spring Swagger Codegen API Client - -This module contains the code for [Generate Spring Boot REST Client with Swagger](http://www.baeldung.com/spring-boot-rest-client-swagger-codegen). - -## Requirements - -Building the API client library requires [Maven](https://maven.apache.org/) to be installed. - -## Installation - -To install the API client library to your local Maven repository, simply execute: - -```shell -mvn install -``` - -To deploy it to a remote Maven repository instead, configure the settings of the repository and execute: - -```shell -mvn deploy -``` - -Refer to the [official documentation](https://maven.apache.org/plugins/maven-deploy-plugin/usage.html) for more information. - -### Maven users - -Add this dependency to your project's POM: - -```xml - - com.baeldung - spring-swagger-codegen-api-client - 0.0.1-SNAPSHOT - compile - -``` - -### Gradle users - -Add this dependency to your project's build file: - -```groovy -compile "com.baeldung:spring-swagger-codegen-api-client:0.0.1-SNAPSHOT" -``` - -### Others - -At first generate the JAR by executing: - - mvn package - -Then manually install the following JARs: - -* target/spring-swagger-codegen-api-client-0.0.1-SNAPSHOT.jar -* target/lib/*.jar - -## Getting Started - -Please follow the [installation](#installation) instruction and execute the following Java code: - -```java - -import com.baeldung.petstore.client.invoker.*; -import com.baeldung.petstore.client.invoker.auth.*; -import com.baeldung.petstore.client.model.*; -import com.baeldung.petstore.client.api.PetApi; - -import java.io.File; -import java.util.*; - -public class PetApiExample { - - public static void main(String[] args) { - ApiClient defaultClient = Configuration.getDefaultApiClient(); - - // Configure OAuth2 access token for authorization: petstore_auth - OAuth petstore_auth = (OAuth) defaultClient.getAuthentication("petstore_auth"); - petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); - - PetApi apiInstance = new PetApi(); - Pet body = new Pet(); // Pet | Pet object that needs to be added to the store - try { - apiInstance.addPet(body); - } catch (ApiException e) { - System.err.println("Exception when calling PetApi#addPet"); - e.printStackTrace(); - } - } -} - -``` - -## Documentation for API Endpoints - -All URIs are relative to *http://petstore.swagger.io/v2* - -Class | Method | HTTP request | Description ------------- | ------------- | ------------- | ------------- -*PetApi* | [**addPet**](docs/PetApi.md#addPet) | **POST** /pet | Add a new pet to the store -*PetApi* | [**deletePet**](docs/PetApi.md#deletePet) | **DELETE** /pet/{petId} | Deletes a pet -*PetApi* | [**findPetsByStatus**](docs/PetApi.md#findPetsByStatus) | **GET** /pet/findByStatus | Finds Pets by status -*PetApi* | [**findPetsByTags**](docs/PetApi.md#findPetsByTags) | **GET** /pet/findByTags | Finds Pets by tags -*PetApi* | [**getPetById**](docs/PetApi.md#getPetById) | **GET** /pet/{petId} | Find pet by ID -*PetApi* | [**updatePet**](docs/PetApi.md#updatePet) | **PUT** /pet | Update an existing pet -*PetApi* | [**updatePetWithForm**](docs/PetApi.md#updatePetWithForm) | **POST** /pet/{petId} | Updates a pet in the store with form data -*PetApi* | [**uploadFile**](docs/PetApi.md#uploadFile) | **POST** /pet/{petId}/uploadImage | uploads an image -*StoreApi* | [**deleteOrder**](docs/StoreApi.md#deleteOrder) | **DELETE** /store/order/{orderId} | Delete purchase order by ID -*StoreApi* | [**getInventory**](docs/StoreApi.md#getInventory) | **GET** /store/inventory | Returns pet inventories by status -*StoreApi* | [**getOrderById**](docs/StoreApi.md#getOrderById) | **GET** /store/order/{orderId} | Find purchase order by ID -*StoreApi* | [**placeOrder**](docs/StoreApi.md#placeOrder) | **POST** /store/order | Place an order for a pet -*UserApi* | [**createUser**](docs/UserApi.md#createUser) | **POST** /user | Create user -*UserApi* | [**createUsersWithArrayInput**](docs/UserApi.md#createUsersWithArrayInput) | **POST** /user/createWithArray | Creates list of users with given input array -*UserApi* | [**createUsersWithListInput**](docs/UserApi.md#createUsersWithListInput) | **POST** /user/createWithList | Creates list of users with given input array -*UserApi* | [**deleteUser**](docs/UserApi.md#deleteUser) | **DELETE** /user/{username} | Delete user -*UserApi* | [**getUserByName**](docs/UserApi.md#getUserByName) | **GET** /user/{username} | Get user by user name -*UserApi* | [**loginUser**](docs/UserApi.md#loginUser) | **GET** /user/login | Logs user into the system -*UserApi* | [**logoutUser**](docs/UserApi.md#logoutUser) | **GET** /user/logout | Logs out current logged in user session -*UserApi* | [**updateUser**](docs/UserApi.md#updateUser) | **PUT** /user/{username} | Updated user - - -## Documentation for Models - - - [Category](docs/Category.md) - - [ModelApiResponse](docs/ModelApiResponse.md) - - [Order](docs/Order.md) - - [Pet](docs/Pet.md) - - [Tag](docs/Tag.md) - - [User](docs/User.md) - - -## Documentation for Authorization - -Authentication schemes defined for the API: -### api_key - -- **Type**: API key -- **API key parameter name**: api_key -- **Location**: HTTP header - -### petstore_auth - -- **Type**: OAuth -- **Flow**: implicit -- **Authorization URL**: http://petstore.swagger.io/oauth/dialog -- **Scopes**: - - write:pets: modify pets in your account - - read:pets: read your pets - - -## Recommendation - -It's recommended to create an instance of `ApiClient` per thread in a multithreaded environment to avoid any potential issues. - -## Author - -apiteam@swagger.io - - - From ca6c9c018827d0abbeee966cdbf62aa958f6ce91 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Tue, 17 Mar 2020 19:06:38 +0800 Subject: [PATCH 11/72] Update README.md --- ddd/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/ddd/README.md b/ddd/README.md index cd7cf90d61..ad84dc40b2 100644 --- a/ddd/README.md +++ b/ddd/README.md @@ -6,5 +6,4 @@ This module contains articles about Domain-driven Design (DDD) - [Persisting DDD Aggregates](https://www.baeldung.com/spring-persisting-ddd-aggregates) - [Double Dispatch in DDD](https://www.baeldung.com/ddd-double-dispatch) -- [DDD Aggregates and @DomainEvents](https://www.baeldung.com/spring-data-ddd) - [Organizing Layers Using Hexagonal Architecture, DDD, and Spring](https://www.baeldung.com/hexagonal-architecture-ddd-spring) From 994a5531c2518826c5610cf85b5d6d440fbb0234 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Tue, 17 Mar 2020 19:08:26 +0800 Subject: [PATCH 12/72] Update README.md --- rxjava-core/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/rxjava-core/README.md b/rxjava-core/README.md index 95a374668d..2773bd9423 100644 --- a/rxjava-core/README.md +++ b/rxjava-core/README.md @@ -13,5 +13,4 @@ This module contains articles about RxJava. - [RxJava Maybe](https://www.baeldung.com/rxjava-maybe) - [Combining RxJava Completables](https://www.baeldung.com/rxjava-completable) - [RxJava Hooks](https://www.baeldung.com/rxjava-hooks) -- [Introduction to rxjava-jdbc](https://www.baeldung.com/rxjava-jdbc) - More articles: [[next -->]](/rxjava-2) From 369cfe24ab46db81083898b2aa51e0d4f8a375b3 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Tue, 17 Mar 2020 19:09:27 +0800 Subject: [PATCH 13/72] Update README.md --- core-java-modules/core-java-9-improvements/README.md | 5 ----- 1 file changed, 5 deletions(-) diff --git a/core-java-modules/core-java-9-improvements/README.md b/core-java-modules/core-java-9-improvements/README.md index 5864170e85..c89d0e3c09 100644 --- a/core-java-modules/core-java-9-improvements/README.md +++ b/core-java-modules/core-java-9-improvements/README.md @@ -9,8 +9,3 @@ This module contains articles about the improvements to core Java features intro - [Java 9 Stream API Improvements](https://www.baeldung.com/java-9-stream-api) - [Java 9 java.util.Objects Additions](https://www.baeldung.com/java-9-objects-new) - [Java 9 CompletableFuture API Improvements](https://www.baeldung.com/java-9-completablefuture) - -#### Relevant articles not in this module: - -- [Java 9 Process API Improvements](https://www.baeldung.com/java-9-process-api) (see the [core-java-os](/core-java-os) module) - From e478767d6af17869672ac40cd906764dfa3db8ac Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Tue, 17 Mar 2020 19:10:07 +0800 Subject: [PATCH 14/72] Update README.md --- spring-boot-modules/spring-boot-mvc-2/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-boot-modules/spring-boot-mvc-2/README.md b/spring-boot-modules/spring-boot-mvc-2/README.md index cb0eea4c2a..dc6a136131 100644 --- a/spring-boot-modules/spring-boot-mvc-2/README.md +++ b/spring-boot-modules/spring-boot-mvc-2/README.md @@ -6,4 +6,4 @@ This module contains articles about Spring Web MVC in Spring Boot projects. - [Functional Controllers in Spring MVC](https://www.baeldung.com/spring-mvc-functional-controllers) - [Specify an Array of Strings as Body Parameters in Swagger](https://www.baeldung.com/swagger-body-array-of-strings) -- More articles: [[prev -->]](/spring-boot-mvc) +- More articles: [[prev -->]](/spring-boot-modules/spring-boot-mvc) From 71b2a9308f8423ea3b38fc4a2fc19e38468af900 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Tue, 17 Mar 2020 19:10:55 +0800 Subject: [PATCH 15/72] Update README.md --- spring-boot-modules/spring-boot-mvc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-boot-modules/spring-boot-mvc/README.md b/spring-boot-modules/spring-boot-mvc/README.md index b4f87d1d40..2e67c42ede 100644 --- a/spring-boot-modules/spring-boot-mvc/README.md +++ b/spring-boot-modules/spring-boot-mvc/README.md @@ -10,4 +10,4 @@ This module contains articles about Spring Web MVC in Spring Boot projects. - [A Controller, Service and DAO Example with Spring Boot and JSF](https://www.baeldung.com/jsf-spring-boot-controller-service-dao) - [Setting Up Swagger 2 with a Spring REST API](https://www.baeldung.com/swagger-2-documentation-for-spring-rest-api) - [Using Spring ResponseEntity to Manipulate the HTTP Response](https://www.baeldung.com/spring-response-entity) -- More articles: [[next -->]](/spring-boot-mvc-2) +- More articles: [[next -->]](/spring-boot-modules/spring-boot-mvc-2) From 4131d1ebbd6974b494a70471be3696b186c4626e Mon Sep 17 00:00:00 2001 From: Graham Cox Date: Tue, 17 Mar 2020 14:30:46 +0000 Subject: [PATCH 16/72] Moved the Moshi examples to json-2 (#8898) --- json-2/pom.xml | 17 +++++++++++++++++ .../moshi/AlternativeAdapterUnitTest.java | 0 .../java/com/baeldung/moshi/ArrayUnitTest.java | 0 .../baeldung/moshi/ComplexAdapterUnitTest.java | 0 .../com/baeldung/moshi/DefaultUnitTest.java | 0 .../com/baeldung/moshi/PrimitiveUnitTest.java | 0 .../java/com/baeldung/moshi/RenameUnitTest.java | 0 .../baeldung/moshi/SimpleAdapterUnitTest.java | 0 .../com/baeldung/moshi/TransientUnitTest.java | 0 libraries-3/pom.xml | 11 ----------- 10 files changed, 17 insertions(+), 11 deletions(-) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/AlternativeAdapterUnitTest.java (100%) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/ArrayUnitTest.java (100%) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/ComplexAdapterUnitTest.java (100%) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/DefaultUnitTest.java (100%) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/PrimitiveUnitTest.java (100%) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/RenameUnitTest.java (100%) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/SimpleAdapterUnitTest.java (100%) rename {libraries-3 => json-2}/src/test/java/com/baeldung/moshi/TransientUnitTest.java (100%) diff --git a/json-2/pom.xml b/json-2/pom.xml index 72b3295b2b..e0295af59b 100644 --- a/json-2/pom.xml +++ b/json-2/pom.xml @@ -33,9 +33,26 @@ ${assertj-core.version} test + + + com.squareup.moshi + moshi + ${moshi.version} + + + com.squareup.moshi + moshi-adapters + ${moshi.version} + + + org.apache.commons + commons-lang3 + 3.9 + 0.9.23 3.11.1 + 1.9.2 diff --git a/libraries-3/src/test/java/com/baeldung/moshi/AlternativeAdapterUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/AlternativeAdapterUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/AlternativeAdapterUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/AlternativeAdapterUnitTest.java diff --git a/libraries-3/src/test/java/com/baeldung/moshi/ArrayUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/ArrayUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/ArrayUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/ArrayUnitTest.java diff --git a/libraries-3/src/test/java/com/baeldung/moshi/ComplexAdapterUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/ComplexAdapterUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/ComplexAdapterUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/ComplexAdapterUnitTest.java diff --git a/libraries-3/src/test/java/com/baeldung/moshi/DefaultUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/DefaultUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/DefaultUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/DefaultUnitTest.java diff --git a/libraries-3/src/test/java/com/baeldung/moshi/PrimitiveUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/PrimitiveUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/PrimitiveUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/PrimitiveUnitTest.java diff --git a/libraries-3/src/test/java/com/baeldung/moshi/RenameUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/RenameUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/RenameUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/RenameUnitTest.java diff --git a/libraries-3/src/test/java/com/baeldung/moshi/SimpleAdapterUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/SimpleAdapterUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/SimpleAdapterUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/SimpleAdapterUnitTest.java diff --git a/libraries-3/src/test/java/com/baeldung/moshi/TransientUnitTest.java b/json-2/src/test/java/com/baeldung/moshi/TransientUnitTest.java similarity index 100% rename from libraries-3/src/test/java/com/baeldung/moshi/TransientUnitTest.java rename to json-2/src/test/java/com/baeldung/moshi/TransientUnitTest.java diff --git a/libraries-3/pom.xml b/libraries-3/pom.xml index a438d423e2..68b5f2aa21 100644 --- a/libraries-3/pom.xml +++ b/libraries-3/pom.xml @@ -73,16 +73,6 @@ ${cache2k.version} pom - - com.squareup.moshi - moshi - ${moshi.version} - - - com.squareup.moshi - moshi-adapters - ${moshi.version} - com.jcabi jcabi-aspects @@ -201,7 +191,6 @@ 0.43 2.7.2 1.2.3.Final - 1.9.2 0.22.6 1.9.2 0.14.1 From 8c56c4ef43c7f9d6edbddececf6f2d0ae0833579 Mon Sep 17 00:00:00 2001 From: George Haris <40850523+gecharita@users.noreply.github.com> Date: Tue, 17 Mar 2020 22:31:11 +0200 Subject: [PATCH 17/72] BAEL-3835 (#8901) * BAEL-3835: Inject a value to a static field * BAEL-3835: integration of code into the src directory Co-authored-by: Georgios Charitakis --- .../staticvalue/injection/Application.java | 16 ++++++++++ .../injection/PropertyController.java | 30 +++++++++++++++++++ .../src/main/resources/application.properties | 1 + 3 files changed, 47 insertions(+) create mode 100644 spring-core-3/src/main/java/com/baeldung/staticvalue/injection/Application.java create mode 100644 spring-core-3/src/main/java/com/baeldung/staticvalue/injection/PropertyController.java create mode 100644 spring-core-3/src/main/resources/application.properties diff --git a/spring-core-3/src/main/java/com/baeldung/staticvalue/injection/Application.java b/spring-core-3/src/main/java/com/baeldung/staticvalue/injection/Application.java new file mode 100644 index 0000000000..45c47c955f --- /dev/null +++ b/spring-core-3/src/main/java/com/baeldung/staticvalue/injection/Application.java @@ -0,0 +1,16 @@ +package com.baeldung.staticvalue.injection; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.PropertySource; + +@SpringBootApplication +@PropertySource("/application.properties") + +public class Application { + + public static void main(String[] args) { + SpringApplication.run(Application.class, args); + } + +} diff --git a/spring-core-3/src/main/java/com/baeldung/staticvalue/injection/PropertyController.java b/spring-core-3/src/main/java/com/baeldung/staticvalue/injection/PropertyController.java new file mode 100644 index 0000000000..f5910ea4f8 --- /dev/null +++ b/spring-core-3/src/main/java/com/baeldung/staticvalue/injection/PropertyController.java @@ -0,0 +1,30 @@ +package com.baeldung.staticvalue.injection; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Arrays; +import java.util.List; + +@RestController +public class PropertyController { + + @Value("${name}") + private String name; + + @Value("${name}") + private static String NAME_NULL; + + private static String NAME_STATIC; + + @Value("${name}") + public void setNameStatic(String name){ + PropertyController.NAME_STATIC = name; + } + + @GetMapping("/properties") + public List getProperties(){ + return Arrays.asList(this.name, NAME_STATIC, NAME_NULL) ; + } +} diff --git a/spring-core-3/src/main/resources/application.properties b/spring-core-3/src/main/resources/application.properties new file mode 100644 index 0000000000..828fa9cd2a --- /dev/null +++ b/spring-core-3/src/main/resources/application.properties @@ -0,0 +1 @@ +name = Inject a value to a static field From 5b154ca3325c63472acc0b3b1f11abb74cce066a Mon Sep 17 00:00:00 2001 From: Sam Millington Date: Tue, 17 Mar 2020 20:42:04 +0000 Subject: [PATCH 18/72] Delete static-value-injection folder (#8902) Co-authored-by: SBLUKcic --- .../static-value-injection/README.md | 22 -------- spring-core-3/static-value-injection/pom.xml | 52 ------------------- .../main/java/com/baeldung/Application.java | 13 ----- .../controller/PropertyController.java | 31 ----------- .../src/main/resources/application.properties | 1 - .../java/com/baeldung/ApplicationTests.java | 13 ----- 6 files changed, 132 deletions(-) delete mode 100644 spring-core-3/static-value-injection/README.md delete mode 100644 spring-core-3/static-value-injection/pom.xml delete mode 100644 spring-core-3/static-value-injection/src/main/java/com/baeldung/Application.java delete mode 100644 spring-core-3/static-value-injection/src/main/java/com/baeldung/controller/PropertyController.java delete mode 100644 spring-core-3/static-value-injection/src/main/resources/application.properties delete mode 100644 spring-core-3/static-value-injection/src/test/java/com/baeldung/ApplicationTests.java diff --git a/spring-core-3/static-value-injection/README.md b/spring-core-3/static-value-injection/README.md deleted file mode 100644 index 06dfa29f80..0000000000 --- a/spring-core-3/static-value-injection/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# Inject a value to a static field - -## How to run -```sh -mvn clean install -mvn spring-boot:run -``` - -## Request - -**GET** -http://localhost:8080/properties - - -## Response -```json -[ - "Inject a value to a static field", - "Inject a value to a static field", - null -] -``` diff --git a/spring-core-3/static-value-injection/pom.xml b/spring-core-3/static-value-injection/pom.xml deleted file mode 100644 index aa45fde886..0000000000 --- a/spring-core-3/static-value-injection/pom.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - 4.0.0 - - org.springframework.boot - spring-boot-starter-parent - 2.2.4.RELEASE - - - com.baeldung - static.value.injection - 0.0.1-SNAPSHOT - static.value.injection - Demo project for Spring Boot - - - 1.8 - - - - - org.springframework.boot - spring-boot-starter - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-test - test - - - org.junit.vintage - junit-vintage-engine - - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - diff --git a/spring-core-3/static-value-injection/src/main/java/com/baeldung/Application.java b/spring-core-3/static-value-injection/src/main/java/com/baeldung/Application.java deleted file mode 100644 index c1875216b5..0000000000 --- a/spring-core-3/static-value-injection/src/main/java/com/baeldung/Application.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.baeldung; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -public class Application { - - public static void main(String[] args) { - SpringApplication.run(Application.class, args); - } - -} diff --git a/spring-core-3/static-value-injection/src/main/java/com/baeldung/controller/PropertyController.java b/spring-core-3/static-value-injection/src/main/java/com/baeldung/controller/PropertyController.java deleted file mode 100644 index 03a2518117..0000000000 --- a/spring-core-3/static-value-injection/src/main/java/com/baeldung/controller/PropertyController.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.baeldung.controller; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Component; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.Arrays; -import java.util.List; - -@RestController -public class PropertyController { - - @Value("${name}") - private String name; - - @Value("${name}") - private static String NAME_NULL; - - private static String NAME_STATIC; - - @Value("${name}") - public void setNameStatic(String name){ - PropertyController.NAME_STATIC = name; - } - - @GetMapping("/properties") - public List getProperties(){ - return Arrays.asList(this.name, NAME_STATIC, NAME_NULL) ; - } -} diff --git a/spring-core-3/static-value-injection/src/main/resources/application.properties b/spring-core-3/static-value-injection/src/main/resources/application.properties deleted file mode 100644 index 828fa9cd2a..0000000000 --- a/spring-core-3/static-value-injection/src/main/resources/application.properties +++ /dev/null @@ -1 +0,0 @@ -name = Inject a value to a static field diff --git a/spring-core-3/static-value-injection/src/test/java/com/baeldung/ApplicationTests.java b/spring-core-3/static-value-injection/src/test/java/com/baeldung/ApplicationTests.java deleted file mode 100644 index 4ad83bc539..0000000000 --- a/spring-core-3/static-value-injection/src/test/java/com/baeldung/ApplicationTests.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.baeldung; - -import org.junit.jupiter.api.Test; -import org.springframework.boot.test.context.SpringBootTest; - -@SpringBootTest -class ApplicationTests { - - @Test - void contextLoads() { - } - -} From 54c1d28b2ee66077f42f16eadd8a17304e0f3cd1 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:08:48 +0800 Subject: [PATCH 19/72] Create README.md --- spring-threads/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 spring-threads/README.md diff --git a/spring-threads/README.md b/spring-threads/README.md new file mode 100644 index 0000000000..c3762cd86f --- /dev/null +++ b/spring-threads/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [ThreadPoolTaskExecutor corePoolSize vs. maxPoolSize](https://www.baeldung.com/java-threadpooltaskexecutor-core-vs-max-poolsize) From fbb59ff98b2b4e26c99aac6186da132411dc3599 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:13:12 +0800 Subject: [PATCH 20/72] Create README.md --- gradle/gradle-to-maven/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 gradle/gradle-to-maven/README.md diff --git a/gradle/gradle-to-maven/README.md b/gradle/gradle-to-maven/README.md new file mode 100644 index 0000000000..9acbfb1647 --- /dev/null +++ b/gradle/gradle-to-maven/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Converting Gradle Build File to Maven POM](https://www.baeldung.com/gradle-build-to-maven-pom) From 57c66c0906c43f5dcf8df09bc47fbfbd4892b3cb Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:15:40 +0800 Subject: [PATCH 21/72] Update README.md --- persistence-modules/spring-data-jpa-4/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/persistence-modules/spring-data-jpa-4/README.md b/persistence-modules/spring-data-jpa-4/README.md index 42e4619a59..3884435f75 100644 --- a/persistence-modules/spring-data-jpa-4/README.md +++ b/persistence-modules/spring-data-jpa-4/README.md @@ -5,6 +5,7 @@ - [Programmatic Transaction Management in Spring](https://www.baeldung.com/spring-programmatic-transaction-management) - [JPA Entity Lifecycle Events](https://www.baeldung.com/jpa-entity-lifecycle-events) - [Working with Lazy Element Collections in JPA](https://www.baeldung.com/java-jpa-lazy-collections) +- [Calling Stored Procedures from Spring Data JPA Repositories](https://www.baeldung.com/spring-data-jpa-stored-procedures) ### Eclipse Config After importing the project into Eclipse, you may see the following error: From 7a445ff86c815cbc87c9f86164ad400c1b3b4f4c Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:18:27 +0800 Subject: [PATCH 22/72] Update README.md --- spring-amqp/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-amqp/README.md b/spring-amqp/README.md index 6b09aec10a..7d202f49f8 100644 --- a/spring-amqp/README.md +++ b/spring-amqp/README.md @@ -7,3 +7,4 @@ This module contains articles about Spring with the AMQP messaging system - [Messaging With Spring AMQP](https://www.baeldung.com/spring-amqp) - [RabbitMQ Message Dispatching with Spring AMQP](https://www.baeldung.com/rabbitmq-spring-amqp) - [Error Handling with Spring AMQP](https://www.baeldung.com/spring-amqp-error-handling) +- [Exponential Backoff With Spring AMQP](https://www.baeldung.com/spring-amqp-exponential-backoff) From d46ed5c784426fd9bf454451f00f3411737438f5 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:20:03 +0800 Subject: [PATCH 23/72] Update README.md --- json-2/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/json-2/README.md b/json-2/README.md index b0f49f0e48..c2b6b36a11 100644 --- a/json-2/README.md +++ b/json-2/README.md @@ -4,3 +4,4 @@ This module contains articles about JSON. ### Relevant Articles: - [Introduction to Jsoniter](https://www.baeldung.com/java-jsoniter) +- [Introduction to Moshi Json](https://www.baeldung.com/java-json-moshi) From e11224d89aae2d91549635c72f59c9ade3063201 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:22:52 +0800 Subject: [PATCH 24/72] Update README.md --- java-numbers-3/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/java-numbers-3/README.md b/java-numbers-3/README.md index 08e8dae8ef..835b8b0b54 100644 --- a/java-numbers-3/README.md +++ b/java-numbers-3/README.md @@ -2,3 +2,4 @@ - [Generating Random Numbers](https://www.baeldung.com/java-generating-random-numbers) - [Convert Double to Long in Java](https://www.baeldung.com/java-convert-double-long) +- [Check for null Before Calling Parse in Double.parseDouble](https://www.baeldung.com/java-check-null-parse-double) From 98c4810ae4f22f62628f4f310d9ad2eaa93eb2da Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:26:04 +0800 Subject: [PATCH 25/72] Update README.md --- core-java-modules/core-java-nio-2/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core-java-modules/core-java-nio-2/README.md b/core-java-modules/core-java-nio-2/README.md index 8b29c97385..ef73159f66 100644 --- a/core-java-modules/core-java-nio-2/README.md +++ b/core-java-modules/core-java-nio-2/README.md @@ -8,4 +8,5 @@ This module contains articles about core Java non-blocking input and output (IO) - [Create a Symbolic Link with Java](https://www.baeldung.com/java-symlink) - [Introduction to the Java NIO Selector](https://www.baeldung.com/java-nio-selector) - [Using Java MappedByteBuffer](https://www.baeldung.com/java-mapped-byte-buffer) -- [[<-- Prev]](/core-java-modules/core-java-nio) \ No newline at end of file +- [How to Lock a File in Java](https://www.baeldung.com/java-lock-files) +- [[<-- Prev]](/core-java-modules/core-java-nio) From 2c04d869770746c2a971221f441dc25e8d6a4e87 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:28:35 +0800 Subject: [PATCH 26/72] Update README.md --- spring-boot-modules/spring-boot-mvc-2/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-boot-modules/spring-boot-mvc-2/README.md b/spring-boot-modules/spring-boot-mvc-2/README.md index dc6a136131..4200f58024 100644 --- a/spring-boot-modules/spring-boot-mvc-2/README.md +++ b/spring-boot-modules/spring-boot-mvc-2/README.md @@ -6,4 +6,5 @@ This module contains articles about Spring Web MVC in Spring Boot projects. - [Functional Controllers in Spring MVC](https://www.baeldung.com/spring-mvc-functional-controllers) - [Specify an Array of Strings as Body Parameters in Swagger](https://www.baeldung.com/swagger-body-array-of-strings) +- [Swagger @ApiParam vs @ApiModelProperty](https://www.baeldung.com/swagger-apiparam-vs-apimodelproperty) - More articles: [[prev -->]](/spring-boot-modules/spring-boot-mvc) From 020a62b92cd3bae37f2b11afba3158267d078723 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:32:33 +0800 Subject: [PATCH 27/72] Create README.md --- play-framework/async-http/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 play-framework/async-http/README.md diff --git a/play-framework/async-http/README.md b/play-framework/async-http/README.md new file mode 100644 index 0000000000..c42b86ad4e --- /dev/null +++ b/play-framework/async-http/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Asynchronous HTTP Programming with Play Framework](https://www.baeldung.com/java-play-asynchronous-http-programming) From 08e438fce277e9eae280d23f5862978093153058 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:39:29 +0800 Subject: [PATCH 28/72] Update README.md --- spring-rest-http/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-rest-http/README.md b/spring-rest-http/README.md index 54b31e80c4..35793cb281 100644 --- a/spring-rest-http/README.md +++ b/spring-rest-http/README.md @@ -12,3 +12,4 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [Returning Custom Status Codes from Spring Controllers](https://www.baeldung.com/spring-mvc-controller-custom-http-status-code) - [Spring RequestMapping](https://www.baeldung.com/spring-requestmapping) - [Guide to DeferredResult in Spring](https://www.baeldung.com/spring-deferred-result) +- [Using JSON Patch in Spring REST APIs](https://www.baeldung.com/spring-rest-json-patch) From 96c2e93de5b7c5b9f827b299acbee2c122221fd0 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:42:31 +0800 Subject: [PATCH 29/72] Update README.md --- spring-batch/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-batch/README.md b/spring-batch/README.md index 99ac9826bc..d637de269c 100644 --- a/spring-batch/README.md +++ b/spring-batch/README.md @@ -9,3 +9,4 @@ This module contains articles about Spring Batch - [How to Trigger and Stop a Scheduled Spring Batch Job](https://www.baeldung.com/spring-batch-start-stop-job) - [Configuring Skip Logic in Spring Batch](https://www.baeldung.com/spring-batch-skip-logic) - [Testing a Spring Batch Job](https://www.baeldung.com/spring-batch-testing-job) +- [Configuring Retry Logic in Spring Batch](https://www.baeldung.com/spring-batch-retry-logic) From fd4fce26775b4445b66e62b2b7412cf425187461 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:46:41 +0800 Subject: [PATCH 30/72] Update README.md --- libraries-3/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/libraries-3/README.md b/libraries-3/README.md index 404045e6b1..a5be14a349 100644 --- a/libraries-3/README.md +++ b/libraries-3/README.md @@ -12,3 +12,4 @@ Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-m - [Guide to the Cactoos Library](https://www.baeldung.com/java-cactoos) - [Parsing Command-Line Parameters with Airline](https://www.baeldung.com/java-airline) - [Introduction to cache2k](https://www.baeldung.com/java-cache2k) +- [Introduction to the jcabi-aspects AOP Annotations Library](https://www.baeldung.com/java-jcabi-aspects) From 89e0499ea650bc043b284a6d57dc764e598a32a4 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:49:21 +0800 Subject: [PATCH 31/72] Update README.md --- spring-cloud/spring-cloud-zuul/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-cloud/spring-cloud-zuul/README.md b/spring-cloud/spring-cloud-zuul/README.md index b8e1773930..acd56a213c 100644 --- a/spring-cloud/spring-cloud-zuul/README.md +++ b/spring-cloud/spring-cloud-zuul/README.md @@ -5,3 +5,4 @@ This module contains articles about Spring with Netflix Zuul ### Relevant Articles: - [Rate Limiting in Spring Cloud Netflix Zuul](https://www.baeldung.com/spring-cloud-zuul-rate-limit) - [Spring REST with a Zuul Proxy](https://www.baeldung.com/spring-rest-with-zuul-proxy) +- [Modifying the Response Body in a Zuul Filter](https://www.baeldung.com/zuul-filter-modifying-response-body) From 7d7caec5bd212289533aa3b39f44727d7c3848dd Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:51:41 +0800 Subject: [PATCH 32/72] Update README.md --- spring-mvc-xml/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-mvc-xml/README.md b/spring-mvc-xml/README.md index 0adf127aaa..685e7686b1 100644 --- a/spring-mvc-xml/README.md +++ b/spring-mvc-xml/README.md @@ -17,6 +17,7 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [A Java Web Application Without a web.xml](https://www.baeldung.com/java-web-app-without-web-xml) - [Validating RequestParams and PathVariables in Spring](https://www.baeldung.com/spring-validate-requestparam-pathvariable) - [Debugging the Spring MVC 404 “No mapping found for HTTP request” Error](https://www.baeldung.com/spring-mvc-404-error) +- [Getting Started with CRaSH](https://www.baeldung.com/jvm-crash-shell) ## Spring MVC with XML Configuration Example Project From 378c353c90a9420c564f1faa828e9e03fc531618 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:55:20 +0800 Subject: [PATCH 33/72] Create README.md --- core-java-modules/core-java-arrays-3/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 core-java-modules/core-java-arrays-3/README.md diff --git a/core-java-modules/core-java-arrays-3/README.md b/core-java-modules/core-java-arrays-3/README.md new file mode 100644 index 0000000000..255d3d097d --- /dev/null +++ b/core-java-modules/core-java-arrays-3/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Arrays.deepEquals](https://www.baeldung.com/java-arrays-deepequals) From e052b9e735f82300f41f217932351dcfc17ace8f Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 12:57:21 +0800 Subject: [PATCH 34/72] Update README.md --- core-java-modules/core-java-exceptions-2/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-exceptions-2/README.md b/core-java-modules/core-java-exceptions-2/README.md index 49ce897e60..7ad951f1de 100644 --- a/core-java-modules/core-java-exceptions-2/README.md +++ b/core-java-modules/core-java-exceptions-2/README.md @@ -7,3 +7,4 @@ This module contains articles about core java exceptions - [Is It a Bad Practice to Catch Throwable?](https://www.baeldung.com/java-catch-throwable-bad-practice) - [Wrapping vs Rethrowing Exceptions in Java](https://www.baeldung.com/java-wrapping-vs-rethrowing-exceptions) - [java.net.UnknownHostException: Invalid Hostname for Server](https://www.baeldung.com/java-unknownhostexception) +- [How to Handle Java SocketException](https://www.baeldung.com/java-socketexception) From dc7cf4dfe719e32a05ba4782c4b96cfcefa51410 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:00:00 +0800 Subject: [PATCH 35/72] Create README.md --- spring-mvc-java-2/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 spring-mvc-java-2/README.md diff --git a/spring-mvc-java-2/README.md b/spring-mvc-java-2/README.md new file mode 100644 index 0000000000..b5d5df3cd4 --- /dev/null +++ b/spring-mvc-java-2/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Cache Headers in Spring MVC](https://www.baeldung.com/spring-mvc-cache-headers) From 72c79a278d22b8cfbd5d625f1427e1078b93419a Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:03:55 +0800 Subject: [PATCH 36/72] Update README.md --- spring-core-3/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-core-3/README.md b/spring-core-3/README.md index ae2d33c196..b064dc74d9 100644 --- a/spring-core-3/README.md +++ b/spring-core-3/README.md @@ -8,4 +8,5 @@ This module contains articles about core Spring functionality - [Guide to the Spring BeanFactory](https://www.baeldung.com/spring-beanfactory) - [How to use the Spring FactoryBean?](https://www.baeldung.com/spring-factorybean) - [Spring – Injecting Collections](https://www.baeldung.com/spring-injecting-collections) +- [Design Patterns in the Spring Framework](https://www.baeldung.com/spring-framework-design-patterns) - More articles: [[<-- prev]](/spring-core-2) From 5f7e961af1af2a9f266c39aec6b3ecfd631f3f27 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:10:33 +0800 Subject: [PATCH 37/72] Update README.md --- persistence-modules/java-mongodb/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/persistence-modules/java-mongodb/README.md b/persistence-modules/java-mongodb/README.md index 41d0ad63f8..a8539e644f 100644 --- a/persistence-modules/java-mongodb/README.md +++ b/persistence-modules/java-mongodb/README.md @@ -9,3 +9,4 @@ This module contains articles about MongoDB in Java. - [MongoDB BSON Guide](https://www.baeldung.com/mongodb-bson) - [Geospatial Support in MongoDB](https://www.baeldung.com/mongodb-geospatial-support) - [Introduction to Morphia – Java ODM for MongoDB](https://www.baeldung.com/mongodb-morphia) +- [MongoDB Aggregations Using Java](https://www.baeldung.com/java-mongodb-aggregations) From a5ea8c9d12a251c73fb77b3c3f5b51a2d99354c4 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:12:25 +0800 Subject: [PATCH 38/72] Update README.md --- core-java-modules/core-java-lang-2/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-lang-2/README.md b/core-java-modules/core-java-lang-2/README.md index a9604d1032..65d40c6a26 100644 --- a/core-java-modules/core-java-lang-2/README.md +++ b/core-java-modules/core-java-lang-2/README.md @@ -9,4 +9,5 @@ This module contains articles about core features in the Java language - [Java Default Parameters Using Method Overloading](https://www.baeldung.com/java-default-parameters-method-overloading) - [How to Return Multiple Values From a Java Method](https://www.baeldung.com/java-method-return-multiple-values) - [Guide to the Java finally Keyword](https://www.baeldung.com/java-finally-keyword) +- [The Java Headless Mode](https://www.baeldung.com/java-headless-mode) - [[<-- Prev]](/core-java-modules/core-java-lang) From 18fdd2b6aae8c0776ae54ea9558e5c14d9a13b9a Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:14:22 +0800 Subject: [PATCH 39/72] Update README.md --- spring-boot-modules/spring-boot-properties/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-boot-modules/spring-boot-properties/README.md b/spring-boot-modules/spring-boot-properties/README.md index daf7c55ab3..d8d9d0df48 100644 --- a/spring-boot-modules/spring-boot-properties/README.md +++ b/spring-boot-modules/spring-boot-properties/README.md @@ -12,3 +12,4 @@ This module contains articles about Properties in Spring Boot. - [Spring YAML Configuration](https://www.baeldung.com/spring-yaml) - [Using Spring @Value with Defaults](https://www.baeldung.com/spring-value-defaults) - [How to Inject a Property Value Into a Class Not Managed by Spring?](https://www.baeldung.com/inject-properties-value-non-spring-class) +- [Add Build Properties to a Spring Boot Application](https://www.baeldung.com/spring-boot-build-properties) From a3f198079de42bff1b4207250f23e4ef85d67939 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:16:03 +0800 Subject: [PATCH 40/72] Update README.md --- libraries-data-io/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/libraries-data-io/README.md b/libraries-data-io/README.md index 550f353c97..3e68334ec9 100644 --- a/libraries-data-io/README.md +++ b/libraries-data-io/README.md @@ -9,3 +9,4 @@ This module contains articles about IO data processing libraries. - [Introduction To OpenCSV](https://www.baeldung.com/opencsv) - [Interact with Google Sheets from Java](https://www.baeldung.com/google-sheets-java-client) - [Introduction To Docx4J](https://www.baeldung.com/docx4j) +- [Breaking YAML Strings Over Multiple Lines](https://www.baeldung.com/yaml-multi-line) From 6fde5e9515f5fde06a599ed697c89e0ee3760550 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:18:19 +0800 Subject: [PATCH 41/72] Update README.md --- image-processing/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/image-processing/README.md b/image-processing/README.md index adb35c2318..4417f312d8 100644 --- a/image-processing/README.md +++ b/image-processing/README.md @@ -4,3 +4,4 @@ This module contains articles about image processing. ### Relevant Articles: - [Working with Images in Java](https://www.baeldung.com/java-images) +- [Intro to OpenCV with Java](https://www.baeldung.com/java-opencv) From c100729cda01a0defb17a0f0ce905d997c9d1ef1 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:19:55 +0800 Subject: [PATCH 42/72] Update README.md --- data-structures/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/data-structures/README.md b/data-structures/README.md index e8fb374f6c..f9ca78679a 100644 --- a/data-structures/README.md +++ b/data-structures/README.md @@ -9,3 +9,4 @@ This module contains articles about data structures in Java - [Circular Linked List Java Implementation](https://www.baeldung.com/java-circular-linked-list) - [How to Print a Binary Tree Diagram](https://www.baeldung.com/java-print-binary-tree-diagram) - [Introduction to Big Queue](https://www.baeldung.com/java-big-queue) +- [Guide to AVL Trees in Java](https://www.baeldung.com/java-avl-trees) From b46622d258a291acbc874e758f7e7092afd6cfe4 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:23:13 +0800 Subject: [PATCH 43/72] Update README.md --- core-java-modules/core-java-14/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-14/README.md b/core-java-modules/core-java-14/README.md index 0648d087be..9ec20cd223 100644 --- a/core-java-modules/core-java-14/README.md +++ b/core-java-modules/core-java-14/README.md @@ -5,3 +5,4 @@ This module contains articles about Java 14. ### Relevant articles - [Guide to the @Serial Annotation in Java 14](https://www.baeldung.com/java-14-serial-annotation) +- [Java Text Blocks](https://www.baeldung.com/java-text-blocks) From c72530f3ffba5e03ac7f0bc376ceec0981d8aa3d Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:24:46 +0800 Subject: [PATCH 44/72] Create README.md --- gradle-6/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 gradle-6/README.md diff --git a/gradle-6/README.md b/gradle-6/README.md new file mode 100644 index 0000000000..a1ea96ad83 --- /dev/null +++ b/gradle-6/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [What’s New in Gradle 6.0](https://www.baeldung.com/gradle-6-features) From 37e2cdbbc230e8f835c0364faee081079fe63da1 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:26:35 +0800 Subject: [PATCH 45/72] Create README.md --- open-liberty/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 open-liberty/README.md diff --git a/open-liberty/README.md b/open-liberty/README.md new file mode 100644 index 0000000000..6a51d2c486 --- /dev/null +++ b/open-liberty/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Introduction to Open Liberty](https://www.baeldung.com/java-open-liberty) From 4616c3d389cae7e82ae5a4a36dbf85fe99f1099e Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:28:15 +0800 Subject: [PATCH 46/72] Update README.md --- spring-boot-modules/spring-boot-bootstrap/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-boot-modules/spring-boot-bootstrap/README.md b/spring-boot-modules/spring-boot-bootstrap/README.md index 5fb8fd4a84..146cd04551 100644 --- a/spring-boot-modules/spring-boot-bootstrap/README.md +++ b/spring-boot-modules/spring-boot-bootstrap/README.md @@ -10,3 +10,4 @@ This module contains articles about bootstrapping Spring Boot applications. - [Deploy a Spring Boot Application to OpenShift](https://www.baeldung.com/spring-boot-deploy-openshift) - [Deploy a Spring Boot Application to AWS Beanstalk](https://www.baeldung.com/spring-boot-deploy-aws-beanstalk) - [Guide to @SpringBootConfiguration in Spring Boot](https://www.baeldung.com/springbootconfiguration-annotation) +- [Implement Health Checks in OpenShift](https://www.baeldung.com/openshift-health-checks) From c6ada1f61c4ca0df8a0ad9ef35c0dcec258d187f Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:30:31 +0800 Subject: [PATCH 47/72] Update README.md --- spring-cloud/spring-cloud-gateway/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-cloud/spring-cloud-gateway/README.md b/spring-cloud/spring-cloud-gateway/README.md index d3323947e8..9c8e0d443a 100644 --- a/spring-cloud/spring-cloud-gateway/README.md +++ b/spring-cloud/spring-cloud-gateway/README.md @@ -5,3 +5,4 @@ This module contains articles about Spring Cloud Gateway ### Relevant Articles: - [Exploring the new Spring Cloud Gateway](http://www.baeldung.com/spring-cloud-gateway) - [Writing Custom Spring Cloud Gateway Filters](https://www.baeldung.com/spring-cloud-custom-gateway-filters) +- [Spring Cloud Gateway Routing Predicate Factories](https://www.baeldung.com/spring-cloud-gateway-routing-predicate-factories) From 36c745ceb54d09828edbe6d289cb27e8403c41cd Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:34:56 +0800 Subject: [PATCH 48/72] Update README.md --- core-java-modules/core-java-string-operations-2/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-string-operations-2/README.md b/core-java-modules/core-java-string-operations-2/README.md index 8687ac19ba..5e92738f5c 100644 --- a/core-java-modules/core-java-string-operations-2/README.md +++ b/core-java-modules/core-java-string-operations-2/README.md @@ -10,4 +10,5 @@ This module contains articles about string operations. - [Java String equalsIgnoreCase()](https://www.baeldung.com/java-string-equalsignorecase) - [Case-Insensitive String Matching in Java](https://www.baeldung.com/java-case-insensitive-string-matching) - [L-Trim and R-Trim in Java](https://www.baeldung.com/l-trim-and-r-trim-in-java) +- [L-Trim and R-Trim Alternatives in Java](https://www.baeldung.com/java-trim-alternatives) - More articles: [[<-- prev]](../core-java-string-operations) From 0af09bf2c113b9e3321a51a72db3137c36b42380 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:36:41 +0800 Subject: [PATCH 49/72] Update README.md --- spring-boot-modules/spring-boot-properties/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-boot-modules/spring-boot-properties/README.md b/spring-boot-modules/spring-boot-properties/README.md index d8d9d0df48..f861a01d10 100644 --- a/spring-boot-modules/spring-boot-properties/README.md +++ b/spring-boot-modules/spring-boot-properties/README.md @@ -13,3 +13,4 @@ This module contains articles about Properties in Spring Boot. - [Using Spring @Value with Defaults](https://www.baeldung.com/spring-value-defaults) - [How to Inject a Property Value Into a Class Not Managed by Spring?](https://www.baeldung.com/inject-properties-value-non-spring-class) - [Add Build Properties to a Spring Boot Application](https://www.baeldung.com/spring-boot-build-properties) +- [IntelliJ – Cannot Resolve Spring Boot Configuration Properties Error](https://www.baeldung.com/intellij-resolve-spring-boot-configuration-properties) From 5c6c706a17b8b8f77c24eafc20deb04531dbc245 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:38:24 +0800 Subject: [PATCH 50/72] Update README.md --- gson/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gson/README.md b/gson/README.md index df6ba0f516..4255e2ead9 100644 --- a/gson/README.md +++ b/gson/README.md @@ -13,4 +13,4 @@ This module contains articles about Gson - [Convert String to JsonObject with Gson](https://www.baeldung.com/gson-string-to-jsonobject) - [Mapping Multiple JSON Fields to a Single Java Field](https://www.baeldung.com/json-multiple-fields-single-java-field) - [Serializing and Deserializing a List with Gson](https://www.baeldung.com/gson-list) - +- [Compare Two JSON Objects with Gson](https://www.baeldung.com/gson-compare-json-objects) From 4051cdcf173a812fb732a9552aa5b44268e1a661 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 13:39:59 +0800 Subject: [PATCH 51/72] Update README.md --- image-processing/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/image-processing/README.md b/image-processing/README.md index 4417f312d8..50129bb994 100644 --- a/image-processing/README.md +++ b/image-processing/README.md @@ -5,3 +5,4 @@ This module contains articles about image processing. ### Relevant Articles: - [Working with Images in Java](https://www.baeldung.com/java-images) - [Intro to OpenCV with Java](https://www.baeldung.com/java-opencv) +- [Optical Character Recognition with Tesseract](https://www.baeldung.com/java-ocr-tesseract) From 53c9accfd679d26a59d56037b7090cbca35da2df Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:09:32 +0800 Subject: [PATCH 52/72] Create README.md --- core-java-modules/core-java-security-2/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 core-java-modules/core-java-security-2/README.md diff --git a/core-java-modules/core-java-security-2/README.md b/core-java-modules/core-java-security-2/README.md new file mode 100644 index 0000000000..c250e24078 --- /dev/null +++ b/core-java-modules/core-java-security-2/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Guide To The Java Authentication And Authorization Service (JAAS)](https://www.baeldung.com/java-authentication-authorization-service) From 087248c5e3c8922c54aa507072966ebde3367ceb Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:11:14 +0800 Subject: [PATCH 53/72] Update README.md --- persistence-modules/spring-data-redis/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/persistence-modules/spring-data-redis/README.md b/persistence-modules/spring-data-redis/README.md index e4a528ae91..175634376b 100644 --- a/persistence-modules/spring-data-redis/README.md +++ b/persistence-modules/spring-data-redis/README.md @@ -4,6 +4,7 @@ - [Introduction to Spring Data Redis](https://www.baeldung.com/spring-data-redis-tutorial) - [PubSub Messaging with Spring Data Redis](https://www.baeldung.com/spring-data-redis-pub-sub) - [An Introduction to Spring Data Redis Reactive](https://www.baeldung.com/spring-data-redis-reactive) +- [Delete Everything in Redis](https://www.baeldung.com/redis-delete-data) ### Build the Project with Tests Running ``` From ff4ac52b2ee71b2f9094428371d6bda192e26f6f Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:12:43 +0800 Subject: [PATCH 54/72] Update README.md --- libraries/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/libraries/README.md b/libraries/README.md index 79ba8fe55d..f439033730 100644 --- a/libraries/README.md +++ b/libraries/README.md @@ -45,4 +45,5 @@ Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-m - [Implementing a FTP-Client in Java](https://www.baeldung.com/java-ftp-client) - [Introduction to Functional Java](https://www.baeldung.com/java-functional-library) - [A Guide to the Reflections Library](https://www.baeldung.com/reflections-library) +- [Using NullAway to Avoid NullPointerExceptions](https://www.baeldung.com/java-nullaway) - More articles [[next -->]](/libraries-2) From f70e4a0563e6f766caa2978641b7ca00fa4e2681 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:14:13 +0800 Subject: [PATCH 55/72] Update README.md --- core-java-modules/core-java-regex/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-regex/README.md b/core-java-modules/core-java-regex/README.md index 7a8f6d9293..21cd7a95a3 100644 --- a/core-java-modules/core-java-regex/README.md +++ b/core-java-modules/core-java-regex/README.md @@ -8,3 +8,4 @@ - [Guide to Escaping Characters in Java RegExps](http://www.baeldung.com/java-regexp-escape-char) - [Pre-compile Regex Patterns Into Pattern Objects](https://www.baeldung.com/java-regex-pre-compile) - [Difference Between Java Matcher find() and matches()](https://www.baeldung.com/java-matcher-find-vs-matches) +- [How to Use Regular Expressions to Replace Tokens in Strings](https://www.baeldung.com/java-regex-token-replacement) From 6c32698f62e9f3042b0c2217643a608ad0a129d3 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:16:14 +0800 Subject: [PATCH 56/72] Update README.md --- spring-core-3/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-core-3/README.md b/spring-core-3/README.md index b064dc74d9..b2c4f694a8 100644 --- a/spring-core-3/README.md +++ b/spring-core-3/README.md @@ -9,4 +9,5 @@ This module contains articles about core Spring functionality - [How to use the Spring FactoryBean?](https://www.baeldung.com/spring-factorybean) - [Spring – Injecting Collections](https://www.baeldung.com/spring-injecting-collections) - [Design Patterns in the Spring Framework](https://www.baeldung.com/spring-framework-design-patterns) +- [Injecting a Value in a Static Field in Spring](https://www.baeldung.com/spring-inject-static-field) - More articles: [[<-- prev]](/spring-core-2) From eb8b2bb8b4fae22f1306e73454200f9b17f74781 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:17:32 +0800 Subject: [PATCH 57/72] Create README.md --- apache-beam/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 apache-beam/README.md diff --git a/apache-beam/README.md b/apache-beam/README.md new file mode 100644 index 0000000000..a71e5256a8 --- /dev/null +++ b/apache-beam/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Introduction to Apache Beam](https://www.baeldung.com/apache-beam) From 5b83d05a1fdfea16b9a333fc8f65a577c3c62cfa Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:19:41 +0800 Subject: [PATCH 58/72] Update README.md --- spring-5/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-5/README.md b/spring-5/README.md index 857b199562..d50f9c7544 100644 --- a/spring-5/README.md +++ b/spring-5/README.md @@ -16,3 +16,4 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [Spring Assert Statements](https://www.baeldung.com/spring-assert) - [Configuring a Hikari Connection Pool with Spring Boot](https://www.baeldung.com/spring-boot-hikari) - [Difference between \ vs \](https://www.baeldung.com/spring-contextannotation-contextcomponentscan) +- [Finding the Spring Version](https://www.baeldung.com/spring-find-version) From 0ea9f1644876d54d8436da5d626e070dcec282c8 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:21:53 +0800 Subject: [PATCH 59/72] Update README.md --- core-java-modules/core-java-perf/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-perf/README.md b/core-java-modules/core-java-perf/README.md index 4204c2b012..d52fd2d733 100644 --- a/core-java-modules/core-java-perf/README.md +++ b/core-java-modules/core-java-perf/README.md @@ -10,3 +10,4 @@ This module contains articles about performance of Java applications - [Basic Introduction to JMX](http://www.baeldung.com/java-management-extensions) - [Monitoring Java Applications with Flight Recorder](https://www.baeldung.com/java-flight-recorder-monitoring) - [Branch Prediction in Java](https://www.baeldung.com/java-branch-prediction) +- [Capturing a Java Thread Dump](https://www.baeldung.com/java-thread-dump) From 7494225aa8f284d1724a68943dbbf35b96495a95 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:23:00 +0800 Subject: [PATCH 60/72] Update README.md --- core-java-modules/core-java-14/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-14/README.md b/core-java-modules/core-java-14/README.md index 9ec20cd223..0e8278c4f6 100644 --- a/core-java-modules/core-java-14/README.md +++ b/core-java-modules/core-java-14/README.md @@ -6,3 +6,4 @@ This module contains articles about Java 14. - [Guide to the @Serial Annotation in Java 14](https://www.baeldung.com/java-14-serial-annotation) - [Java Text Blocks](https://www.baeldung.com/java-text-blocks) +- [Pattern Matching for instanceof in Java 14](https://www.baeldung.com/java-pattern-matching-instanceof) From 231a181804cf01ce979efd78b403aef7d3e428e5 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:24:22 +0800 Subject: [PATCH 61/72] Update README.md --- spring-boot-modules/spring-boot-testing/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-boot-modules/spring-boot-testing/README.md b/spring-boot-modules/spring-boot-testing/README.md index 0b2533e6bc..882e2be766 100644 --- a/spring-boot-modules/spring-boot-testing/README.md +++ b/spring-boot-modules/spring-boot-testing/README.md @@ -12,3 +12,4 @@ The "REST With Spring" Classes: http://bit.ly/restwithspring - [Exclude Auto-Configuration Classes in Spring Boot Tests](https://www.baeldung.com/spring-boot-exclude-auto-configuration-test) - [Setting the Log Level in Spring Boot when Testing](https://www.baeldung.com/spring-boot-testing-log-level) - [Embedded Redis Server with Spring Boot Test](https://www.baeldung.com/spring-embedded-redis) +- [Testing Spring Boot @ConfigurationProperties](https://www.baeldung.com/spring-boot-testing-configurationproperties) From 9cda688213788e7caf4bdc603d5bbb30fc6b950e Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:25:35 +0800 Subject: [PATCH 62/72] Update README.md --- algorithms-searching/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/algorithms-searching/README.md b/algorithms-searching/README.md index 9b85995235..aed3c7d21f 100644 --- a/algorithms-searching/README.md +++ b/algorithms-searching/README.md @@ -10,3 +10,4 @@ This module contains articles about searching algorithms. - [String Search Algorithms for Large Texts](https://www.baeldung.com/java-full-text-search-algorithms) - [Monte Carlo Tree Search for Tic-Tac-Toe Game](https://www.baeldung.com/java-monte-carlo-tree-search) - [Range Search Algorithm in Java](https://www.baeldung.com/java-range-search) +- [Fast Pattern Matching of Strings Using Suffix Tree](https://www.baeldung.com/java-pattern-matching-suffix-tree) From 803c8ddc990105649c306a4d6995160a484a2875 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:27:33 +0800 Subject: [PATCH 63/72] Update README.md --- core-java-modules/core-java-exceptions-2/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-modules/core-java-exceptions-2/README.md b/core-java-modules/core-java-exceptions-2/README.md index 7ad951f1de..1b8457acc4 100644 --- a/core-java-modules/core-java-exceptions-2/README.md +++ b/core-java-modules/core-java-exceptions-2/README.md @@ -8,3 +8,4 @@ This module contains articles about core java exceptions - [Wrapping vs Rethrowing Exceptions in Java](https://www.baeldung.com/java-wrapping-vs-rethrowing-exceptions) - [java.net.UnknownHostException: Invalid Hostname for Server](https://www.baeldung.com/java-unknownhostexception) - [How to Handle Java SocketException](https://www.baeldung.com/java-socketexception) +- [Java Suppressed Exceptions](https://www.baeldung.com/java-suppressed-exceptions) From a494d8b0e5863c2005692a77cc9b57d74233a128 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:29:11 +0800 Subject: [PATCH 64/72] Update README.md --- libraries-3/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/libraries-3/README.md b/libraries-3/README.md index a5be14a349..0a76c7ff6e 100644 --- a/libraries-3/README.md +++ b/libraries-3/README.md @@ -13,3 +13,4 @@ Remember, for advanced libraries like [Jackson](/jackson) and [JUnit](/testing-m - [Parsing Command-Line Parameters with Airline](https://www.baeldung.com/java-airline) - [Introduction to cache2k](https://www.baeldung.com/java-cache2k) - [Introduction to the jcabi-aspects AOP Annotations Library](https://www.baeldung.com/java-jcabi-aspects) +- [Introduction to Takes](https://www.baeldung.com/java-takes) From 3f1881176169f758c38cab8018bf2d6173a47139 Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:31:33 +0800 Subject: [PATCH 65/72] Create README.md --- spring-ejb/ejb-beans/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 spring-ejb/ejb-beans/README.md diff --git a/spring-ejb/ejb-beans/README.md b/spring-ejb/ejb-beans/README.md new file mode 100644 index 0000000000..f1af5a3a87 --- /dev/null +++ b/spring-ejb/ejb-beans/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: + +- [Spring Bean vs. EJB – A Feature Comparison](https://www.baeldung.com/spring-bean-vs-ejb) From fa7b7266e6aadf8d2e43bca5e2b1470ee284db8b Mon Sep 17 00:00:00 2001 From: johnA1331 <53036378+johnA1331@users.noreply.github.com> Date: Wed, 18 Mar 2020 14:33:15 +0800 Subject: [PATCH 66/72] Update README.md --- ddd-modules/README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ddd-modules/README.md b/ddd-modules/README.md index 5616cce48b..ba6b8d5016 100644 --- a/ddd-modules/README.md +++ b/ddd-modules/README.md @@ -1 +1,3 @@ -## Relevant Articles +### Relevant Articles: + +- [DDD Bounded Contexts and Java Modules](https://www.baeldung.com/java-modules-ddd-bounded-contexts) From 932eba6929119547d1843ebf9a88702338d67f44 Mon Sep 17 00:00:00 2001 From: kwoyke Date: Wed, 18 Mar 2020 07:44:23 +0100 Subject: [PATCH 67/72] BAEL-3921: Remove adding a redundant log handler (#8881) --- .../constructorsstaticfactorymethods/entities/User.java | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/patterns/design-patterns-creational/src/main/java/com/baeldung/constructorsstaticfactorymethods/entities/User.java b/patterns/design-patterns-creational/src/main/java/com/baeldung/constructorsstaticfactorymethods/entities/User.java index f05a3baaa3..a602d1c55d 100644 --- a/patterns/design-patterns-creational/src/main/java/com/baeldung/constructorsstaticfactorymethods/entities/User.java +++ b/patterns/design-patterns-creational/src/main/java/com/baeldung/constructorsstaticfactorymethods/entities/User.java @@ -19,8 +19,8 @@ public class User { } public static User createWithLoggedInstantiationTime(String name, String email, String country) { - setLoggerProperties(); LOGGER.log(Level.INFO, "Creating User instance at : {0}", LocalTime.now()); + return new User(name, email, country); } @@ -53,11 +53,4 @@ public class User { public String getCountry() { return country; } - - private static void setLoggerProperties() { - ConsoleHandler handler = new ConsoleHandler(); - handler.setLevel(Level.INFO); - handler.setFormatter(new SimpleFormatter()); - LOGGER.addHandler(handler); - } } From 52822b7c226f215b8790eae6776281f6a01a71be Mon Sep 17 00:00:00 2001 From: Donato Rimenti Date: Wed, 18 Mar 2020 11:41:11 +0100 Subject: [PATCH 68/72] [JAVA-963] Added parent pom to jhipster-5/bookstore-monolith and renamed tests according to conventions (*Test -> *UnitTest, *IntTest -> *IntegrationTest) --- jhipster-5/bookstore-monolith/pom.xml | 6 ++++++ ...bConfigurerTest.java => WebConfigurerUnitTest.java} | 10 +++++----- ...oller.java => WebConfigurerUnitTestController.java} | 2 +- ... => CustomAuditEventRepositoryIntegrationTest.java} | 2 +- ...va => DomainUserDetailsServiceIntegrationTest.java} | 2 +- .../jwt/{JWTFilterTest.java => JWTFilterUnitTest.java} | 2 +- ...kenProviderTest.java => TokenProviderUnitTest.java} | 2 +- ...iceIntTest.java => MailServiceIntegrationTest.java} | 2 +- ...iceIntTest.java => UserServiceIntegrationTest.java} | 2 +- .../{UserMapperTest.java => UserMapperUnitTest.java} | 2 +- ...ntTest.java => AccountResourceIntegrationTest.java} | 2 +- ...eIntTest.java => AuditResourceIntegrationTest.java} | 2 +- ...ceIntTest.java => BookResourceIntegrationTest.java} | 2 +- ...ceIntTest.java => LogsResourceIntegrationTest.java} | 2 +- ...Test.java => UserJWTControllerIntegrationTest.java} | 2 +- ...ceIntTest.java => UserResourceIntegrationTest.java} | 2 +- ...st.java => ExceptionTranslatorIntegrationTest.java} | 2 +- 17 files changed, 26 insertions(+), 20 deletions(-) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/{WebConfigurerTest.java => WebConfigurerUnitTest.java} (97%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/{WebConfigurerTestController.java => WebConfigurerUnitTestController.java} (87%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/repository/{CustomAuditEventRepositoryIntTest.java => CustomAuditEventRepositoryIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/{DomainUserDetailsServiceIntTest.java => DomainUserDetailsServiceIntegrationTest.java} (98%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/{JWTFilterTest.java => JWTFilterUnitTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/{TokenProviderTest.java => TokenProviderUnitTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/{MailServiceIntTest.java => MailServiceIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/{UserServiceIntTest.java => UserServiceIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/mapper/{UserMapperTest.java => UserMapperUnitTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/{AccountResourceIntTest.java => AccountResourceIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/{AuditResourceIntTest.java => AuditResourceIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/{BookResourceIntTest.java => BookResourceIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/{LogsResourceIntTest.java => LogsResourceIntegrationTest.java} (98%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/{UserJWTControllerIntTest.java => UserJWTControllerIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/{UserResourceIntTest.java => UserResourceIntegrationTest.java} (99%) rename jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/errors/{ExceptionTranslatorIntTest.java => ExceptionTranslatorIntegrationTest.java} (99%) diff --git a/jhipster-5/bookstore-monolith/pom.xml b/jhipster-5/bookstore-monolith/pom.xml index 60fc1acf92..5eaf761921 100644 --- a/jhipster-5/bookstore-monolith/pom.xml +++ b/jhipster-5/bookstore-monolith/pom.xml @@ -7,6 +7,12 @@ 0.0.1-SNAPSHOT war Bookstore + + + jhipster-5 + com.baeldung.jhipster + 1.0.0-SNAPSHOT + diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerUnitTest.java similarity index 97% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerUnitTest.java index 670042d2df..764d6b3587 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerUnitTest.java @@ -37,7 +37,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. * * @see WebConfigurer */ -public class WebConfigurerTest { +public class WebConfigurerUnitTest { private WebConfigurer webConfigurer; @@ -116,7 +116,7 @@ public class WebConfigurerTest { props.getCors().setMaxAge(1800L); props.getCors().setAllowCredentials(true); - MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerTestController()) + MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerUnitTestController()) .addFilters(webConfigurer.corsFilter()) .build(); @@ -146,7 +146,7 @@ public class WebConfigurerTest { props.getCors().setMaxAge(1800L); props.getCors().setAllowCredentials(true); - MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerTestController()) + MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerUnitTestController()) .addFilters(webConfigurer.corsFilter()) .build(); @@ -161,7 +161,7 @@ public class WebConfigurerTest { public void testCorsFilterDeactivated() throws Exception { props.getCors().setAllowedOrigins(null); - MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerTestController()) + MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerUnitTestController()) .addFilters(webConfigurer.corsFilter()) .build(); @@ -176,7 +176,7 @@ public class WebConfigurerTest { public void testCorsFilterDeactivated2() throws Exception { props.getCors().setAllowedOrigins(new ArrayList<>()); - MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerTestController()) + MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new WebConfigurerUnitTestController()) .addFilters(webConfigurer.corsFilter()) .build(); diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerTestController.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerUnitTestController.java similarity index 87% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerTestController.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerUnitTestController.java index c19b28ea16..ee72e1c80e 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerTestController.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/config/WebConfigurerUnitTestController.java @@ -4,7 +4,7 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController -public class WebConfigurerTestController { +public class WebConfigurerUnitTestController { @GetMapping("/api/test-cors") public void testCorsOnApiPath() { diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/repository/CustomAuditEventRepositoryIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/repository/CustomAuditEventRepositoryIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/repository/CustomAuditEventRepositoryIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/repository/CustomAuditEventRepositoryIntegrationTest.java index eaf5c07504..948bf43f87 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/repository/CustomAuditEventRepositoryIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/repository/CustomAuditEventRepositoryIntegrationTest.java @@ -33,7 +33,7 @@ import static com.baeldung.jhipster5.repository.CustomAuditEventRepository.EVENT @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) @Transactional -public class CustomAuditEventRepositoryIntTest { +public class CustomAuditEventRepositoryIntegrationTest { @Autowired private PersistenceAuditEventRepository persistenceAuditEventRepository; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/DomainUserDetailsServiceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/DomainUserDetailsServiceIntegrationTest.java similarity index 98% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/DomainUserDetailsServiceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/DomainUserDetailsServiceIntegrationTest.java index f11252de2b..11757f6516 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/DomainUserDetailsServiceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/DomainUserDetailsServiceIntegrationTest.java @@ -28,7 +28,7 @@ import static org.assertj.core.api.Assertions.assertThat; @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) @Transactional -public class DomainUserDetailsServiceIntTest { +public class DomainUserDetailsServiceIntegrationTest { private static final String USER_ONE_LOGIN = "test-user-one"; private static final String USER_ONE_EMAIL = "test-user-one@localhost"; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/JWTFilterTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/JWTFilterUnitTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/JWTFilterTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/JWTFilterUnitTest.java index b3de21819b..2be8e6809a 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/JWTFilterTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/JWTFilterUnitTest.java @@ -20,7 +20,7 @@ import java.util.Collections; import static org.assertj.core.api.Assertions.assertThat; -public class JWTFilterTest { +public class JWTFilterUnitTest { private TokenProvider tokenProvider; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/TokenProviderTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/TokenProviderUnitTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/TokenProviderTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/TokenProviderUnitTest.java index 11fcfddbf9..18da2eb875 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/TokenProviderTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/security/jwt/TokenProviderUnitTest.java @@ -22,7 +22,7 @@ import io.jsonwebtoken.security.Keys; import static org.assertj.core.api.Assertions.assertThat; -public class TokenProviderTest { +public class TokenProviderUnitTest { private final long ONE_MINUTE = 60000; private Key key; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/MailServiceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/MailServiceIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/MailServiceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/MailServiceIntegrationTest.java index 4bde3276f5..72592e1239 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/MailServiceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/MailServiceIntegrationTest.java @@ -31,7 +31,7 @@ import static org.mockito.Mockito.*; @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class MailServiceIntTest { +public class MailServiceIntegrationTest { @Autowired private JHipsterProperties jHipsterProperties; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/UserServiceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/UserServiceIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/UserServiceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/UserServiceIntegrationTest.java index 81034c2793..ca3608462d 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/UserServiceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/UserServiceIntegrationTest.java @@ -38,7 +38,7 @@ import static org.mockito.Mockito.when; @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) @Transactional -public class UserServiceIntTest { +public class UserServiceIntegrationTest { @Autowired private UserRepository userRepository; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/mapper/UserMapperTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/mapper/UserMapperUnitTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/mapper/UserMapperTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/mapper/UserMapperUnitTest.java index 3d66fa5813..cd6a326c06 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/mapper/UserMapperTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/service/mapper/UserMapperUnitTest.java @@ -26,7 +26,7 @@ import static org.assertj.core.api.Assertions.assertThat; */ @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class UserMapperTest { +public class UserMapperUnitTest { private static final String DEFAULT_LOGIN = "johndoe"; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AccountResourceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AccountResourceIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AccountResourceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AccountResourceIntegrationTest.java index 6db284a87f..f591b7ecbf 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AccountResourceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AccountResourceIntegrationTest.java @@ -49,7 +49,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. */ @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class AccountResourceIntTest { +public class AccountResourceIntegrationTest { @Autowired private UserRepository userRepository; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AuditResourceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AuditResourceIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AuditResourceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AuditResourceIntegrationTest.java index c3b91ab390..05d8f9d503 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AuditResourceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/AuditResourceIntegrationTest.java @@ -35,7 +35,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) @Transactional -public class AuditResourceIntTest { +public class AuditResourceIntegrationTest { private static final String SAMPLE_PRINCIPAL = "SAMPLE_PRINCIPAL"; private static final String SAMPLE_TYPE = "SAMPLE_TYPE"; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/BookResourceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/BookResourceIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/BookResourceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/BookResourceIntegrationTest.java index ef8f27ceea..4f5cb25cdb 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/BookResourceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/BookResourceIntegrationTest.java @@ -43,7 +43,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. */ @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class BookResourceIntTest { +public class BookResourceIntegrationTest { private static final String DEFAULT_TITLE = "AAAAAAAAAA"; private static final String UPDATED_TITLE = "BBBBBBBBBB"; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/LogsResourceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/LogsResourceIntegrationTest.java similarity index 98% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/LogsResourceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/LogsResourceIntegrationTest.java index 62f7f3f17c..b045f52f87 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/LogsResourceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/LogsResourceIntegrationTest.java @@ -27,7 +27,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. */ @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class LogsResourceIntTest { +public class LogsResourceIntegrationTest { private MockMvc restLogsMockMvc; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserJWTControllerIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserJWTControllerIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserJWTControllerIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserJWTControllerIntegrationTest.java index 3886710438..7cfc0e19fc 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserJWTControllerIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserJWTControllerIntegrationTest.java @@ -33,7 +33,7 @@ import static org.hamcrest.Matchers.not; */ @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class UserJWTControllerIntTest { +public class UserJWTControllerIntegrationTest { @Autowired private TokenProvider tokenProvider; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserResourceIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserResourceIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserResourceIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserResourceIntegrationTest.java index d31df3b15c..c0abc042fb 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserResourceIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/UserResourceIntegrationTest.java @@ -42,7 +42,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. */ @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class UserResourceIntTest { +public class UserResourceIntegrationTest { private static final String DEFAULT_LOGIN = "johndoe"; private static final String UPDATED_LOGIN = "jhipster"; diff --git a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/errors/ExceptionTranslatorIntTest.java b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/errors/ExceptionTranslatorIntegrationTest.java similarity index 99% rename from jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/errors/ExceptionTranslatorIntTest.java rename to jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/errors/ExceptionTranslatorIntegrationTest.java index a94d54063b..e5ef08ee9c 100644 --- a/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/errors/ExceptionTranslatorIntTest.java +++ b/jhipster-5/bookstore-monolith/src/test/java/com/baeldung/jhipster5/web/rest/errors/ExceptionTranslatorIntegrationTest.java @@ -25,7 +25,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. */ @RunWith(SpringRunner.class) @SpringBootTest(classes = BookstoreApp.class) -public class ExceptionTranslatorIntTest { +public class ExceptionTranslatorIntegrationTest { @Autowired private ExceptionTranslatorTestController controller; From 89e04a58fdc4238d49342ca7284a7a34f6284d1c Mon Sep 17 00:00:00 2001 From: Krzysztof Woyke Date: Wed, 18 Mar 2020 15:05:59 +0100 Subject: [PATCH 69/72] BAEL-3931: Use httpS://repo.spring.io --- parent-kotlin/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parent-kotlin/pom.xml b/parent-kotlin/pom.xml index e3d67eaaf2..52a753439c 100644 --- a/parent-kotlin/pom.xml +++ b/parent-kotlin/pom.xml @@ -31,7 +31,7 @@ spring-milestone Spring Milestone Repository - http://repo.spring.io/milestone + https://repo.spring.io/milestone From 9d2472839fc9a9e6e9f010eac0dc07a3dacd4008 Mon Sep 17 00:00:00 2001 From: Krzysztof Woyke Date: Wed, 18 Mar 2020 15:11:59 +0100 Subject: [PATCH 70/72] BAEL-3931: Migrate FuelHttpUnitTest to FuelHttpLiveTest --- .../fuel/{FuelHttpUnitTest.kt => FuelHttpLiveTest.kt} | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) rename kotlin-libraries-2/src/test/kotlin/com/baeldung/fuel/{FuelHttpUnitTest.kt => FuelHttpLiveTest.kt} (97%) diff --git a/kotlin-libraries-2/src/test/kotlin/com/baeldung/fuel/FuelHttpUnitTest.kt b/kotlin-libraries-2/src/test/kotlin/com/baeldung/fuel/FuelHttpLiveTest.kt similarity index 97% rename from kotlin-libraries-2/src/test/kotlin/com/baeldung/fuel/FuelHttpUnitTest.kt rename to kotlin-libraries-2/src/test/kotlin/com/baeldung/fuel/FuelHttpLiveTest.kt index b7993c5f43..69b6ae88c6 100644 --- a/kotlin-libraries-2/src/test/kotlin/com/baeldung/fuel/FuelHttpUnitTest.kt +++ b/kotlin-libraries-2/src/test/kotlin/com/baeldung/fuel/FuelHttpLiveTest.kt @@ -12,7 +12,11 @@ import org.junit.jupiter.api.Test import java.io.File import java.util.concurrent.CountDownLatch -internal class FuelHttpUnitTest { +/** + * These live tests make connections to the external systems: http://httpbin.org, https://jsonplaceholder.typicode.com + * Make sure these hosts are up and your internet connection is on before running the tests. + */ +internal class FuelHttpLiveTest { @Test fun whenMakingAsyncHttpGetRequest_thenResponseNotNullAndErrorNullAndStatusCode200() { From 89a3f70befcc878f747f62c8e9ca0a5db8c937cd Mon Sep 17 00:00:00 2001 From: Loredana Date: Wed, 18 Mar 2020 20:22:39 +0200 Subject: [PATCH 71/72] disable jee tests - fixing in BAEL-3812 --- .../baeldung/batch/understanding/CustomCheckPointUnitTest.java | 2 ++ .../com/baeldung/batch/understanding/JobSequenceUnitTest.java | 2 ++ .../com/baeldung/batch/understanding/SimpleChunkUnitTest.java | 2 ++ 3 files changed, 6 insertions(+) diff --git a/jee-7/src/test/java/com/baeldung/batch/understanding/CustomCheckPointUnitTest.java b/jee-7/src/test/java/com/baeldung/batch/understanding/CustomCheckPointUnitTest.java index dfea878a75..744bdfc8f5 100644 --- a/jee-7/src/test/java/com/baeldung/batch/understanding/CustomCheckPointUnitTest.java +++ b/jee-7/src/test/java/com/baeldung/batch/understanding/CustomCheckPointUnitTest.java @@ -12,7 +12,9 @@ import javax.batch.runtime.StepExecution; import com.baeldung.batch.understanding.BatchTestHelper; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.Disabled; +@Disabled("Should be fixed in BAEL-3812") class CustomCheckPointUnitTest { @Test public void givenChunk_whenCustomCheckPoint_thenCommitCountIsThree() throws Exception { diff --git a/jee-7/src/test/java/com/baeldung/batch/understanding/JobSequenceUnitTest.java b/jee-7/src/test/java/com/baeldung/batch/understanding/JobSequenceUnitTest.java index 7c5e8d0b78..88b981df92 100644 --- a/jee-7/src/test/java/com/baeldung/batch/understanding/JobSequenceUnitTest.java +++ b/jee-7/src/test/java/com/baeldung/batch/understanding/JobSequenceUnitTest.java @@ -13,7 +13,9 @@ import javax.batch.runtime.JobExecution; import javax.batch.runtime.StepExecution; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.Disabled; +@Disabled("Should be fixed in BAEL-3812") class JobSequenceUnitTest { @Test public void givenTwoSteps_thenBatch_CompleteWithSuccess() throws Exception { diff --git a/jee-7/src/test/java/com/baeldung/batch/understanding/SimpleChunkUnitTest.java b/jee-7/src/test/java/com/baeldung/batch/understanding/SimpleChunkUnitTest.java index 57c794ba00..5871143fa3 100644 --- a/jee-7/src/test/java/com/baeldung/batch/understanding/SimpleChunkUnitTest.java +++ b/jee-7/src/test/java/com/baeldung/batch/understanding/SimpleChunkUnitTest.java @@ -14,7 +14,9 @@ import javax.batch.runtime.Metric; import javax.batch.runtime.StepExecution; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.Disabled; +@Disabled("Should be fixed in BAEL-3812") class SimpleChunkUnitTest { @Test public void givenChunk_thenBatch_CompletesWithSucess() throws Exception { From a94b56c74eaac631cff61b372da9cf2ace69493b Mon Sep 17 00:00:00 2001 From: petershatunov Date: Thu, 19 Mar 2020 00:00:37 +0300 Subject: [PATCH 72/72] lazy_load_no_trans init commit (#8736) * lazy_load_no_trans init commit * refactoring * methods naming * Update persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOnIntegrationTest.java Co-Authored-By: KevinGilmore * Update persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOnIntegrationTest.java Co-Authored-By: KevinGilmore * Update persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOffIntegrationTest.java Co-Authored-By: KevinGilmore * naming * code readability Co-authored-by: admin Co-authored-by: KevinGilmore --- .../spring-boot-persistence-h2/pom.xml | 18 +++++ .../LazyLoadNoTransSpringBootApplication.java | 13 ++++ .../DatasourceProxyBeanPostProcessor.java | 67 +++++++++++++++++++ .../lazy_load_no_trans/entity/Document.java | 26 +++++++ .../h2db/lazy_load_no_trans/entity/User.java | 37 ++++++++++ .../repository/UserRepository.java | 9 +++ .../service/ServiceLayer.java | 34 ++++++++++ ...lication-lazy-load-no-trans-off.properties | 13 ++++ ...plication-lazy-load-no-trans-on.properties | 13 ++++ .../src/main/resources/data.sql | 15 ++++- ...LoadNoTransPropertyOffIntegrationTest.java | 41 ++++++++++++ ...yLoadNoTransPropertyOnIntegrationTest.java | 47 +++++++++++++ 12 files changed, 332 insertions(+), 1 deletion(-) create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/LazyLoadNoTransSpringBootApplication.java create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/config/DatasourceProxyBeanPostProcessor.java create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/Document.java create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/User.java create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/repository/UserRepository.java create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/service/ServiceLayer.java create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-off.properties create mode 100644 persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-on.properties create mode 100644 persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOffIntegrationTest.java create mode 100644 persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOnIntegrationTest.java diff --git a/persistence-modules/spring-boot-persistence-h2/pom.xml b/persistence-modules/spring-boot-persistence-h2/pom.xml index 5b5e255211..777bc6cb2d 100644 --- a/persistence-modules/spring-boot-persistence-h2/pom.xml +++ b/persistence-modules/spring-boot-persistence-h2/pom.xml @@ -29,12 +29,30 @@ com.h2database h2 + + org.projectlombok + lombok + ${lombok.version} + compile + + + org.hibernate + hibernate-core + ${hibernate.version} + + + com.vladmihalcea + db-util + ${db-util.version} + com.baeldung.h2db.demo.server.SpringBootApp 2.0.4.RELEASE + 5.3.11.Final + 1.0.4 diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/LazyLoadNoTransSpringBootApplication.java b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/LazyLoadNoTransSpringBootApplication.java new file mode 100644 index 0000000000..a52d9fc2f9 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/LazyLoadNoTransSpringBootApplication.java @@ -0,0 +1,13 @@ +package com.baeldung.h2db.lazy_load_no_trans; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +@SpringBootApplication +@EnableTransactionManagement +public class LazyLoadNoTransSpringBootApplication { + public static void main(String[] args) { + SpringApplication.run(LazyLoadNoTransSpringBootApplication.class, args); + } +} diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/config/DatasourceProxyBeanPostProcessor.java b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/config/DatasourceProxyBeanPostProcessor.java new file mode 100644 index 0000000000..c087427b65 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/config/DatasourceProxyBeanPostProcessor.java @@ -0,0 +1,67 @@ +package com.baeldung.h2db.lazy_load_no_trans.config; + +import net.ttddyy.dsproxy.listener.DataSourceQueryCountListener; +import net.ttddyy.dsproxy.listener.logging.CommonsQueryLoggingListener; +import net.ttddyy.dsproxy.listener.logging.DefaultQueryLogEntryCreator; +import net.ttddyy.dsproxy.listener.logging.SLF4JLogLevel; +import net.ttddyy.dsproxy.listener.logging.SLF4JQueryLoggingListener; +import net.ttddyy.dsproxy.support.ProxyDataSource; +import net.ttddyy.dsproxy.support.ProxyDataSourceBuilder; +import org.aopalliance.intercept.MethodInterceptor; +import org.aopalliance.intercept.MethodInvocation; +import org.springframework.aop.framework.ProxyFactory; +import org.springframework.beans.factory.config.BeanPostProcessor; +import org.springframework.stereotype.Component; +import org.springframework.util.ReflectionUtils; + +import javax.sql.DataSource; +import java.lang.reflect.Method; + +@Component +public class DatasourceProxyBeanPostProcessor implements BeanPostProcessor { + + @Override + public Object postProcessAfterInitialization(Object bean, String beanName) { + if (bean instanceof DataSource && !(bean instanceof ProxyDataSource)) { + // Instead of directly returning a less specific datasource bean + // (e.g.: HikariDataSource -> DataSource), return a proxy object. + // See following links for why: + // https://stackoverflow.com/questions/44237787/how-to-use-user-defined-database-proxy-in-datajpatest + // https://gitter.im/spring-projects/spring-boot?at=5983602d2723db8d5e70a904 + // http://blog.arnoldgalovics.com/2017/06/26/configuring-a-datasource-proxy-in-spring-boot/ + final ProxyFactory factory = new ProxyFactory(bean); + factory.setProxyTargetClass(true); + factory.addAdvice(new ProxyDataSourceInterceptor((DataSource) bean)); + return factory.getProxy(); + } + return bean; + } + + @Override + public Object postProcessBeforeInitialization(Object bean, String beanName) { + return bean; + } + + private static class ProxyDataSourceInterceptor implements MethodInterceptor { + private final DataSource dataSource; + + public ProxyDataSourceInterceptor(final DataSource dataSource) { + this.dataSource = ProxyDataSourceBuilder.create(dataSource) + .name("MyDS") + .multiline() + .logQueryBySlf4j(SLF4JLogLevel.INFO) + .listener(new DataSourceQueryCountListener()) + .build(); + } + + @Override + public Object invoke(final MethodInvocation invocation) throws Throwable { + final Method proxyMethod = ReflectionUtils.findMethod(this.dataSource.getClass(), + invocation.getMethod().getName()); + if (proxyMethod != null) { + return proxyMethod.invoke(this.dataSource, invocation.getArguments()); + } + return invocation.proceed(); + } + } +} diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/Document.java b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/Document.java new file mode 100644 index 0000000000..9d69e7eb58 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/Document.java @@ -0,0 +1,26 @@ +package com.baeldung.h2db.lazy_load_no_trans.entity; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import org.hibernate.annotations.Immutable; + +import javax.persistence.Entity; +import javax.persistence.Id; + +@Entity +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +@Immutable +public class Document { + + @Id + private Long id; + + private String title; + + private Long userId; +} diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/User.java b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/User.java new file mode 100644 index 0000000000..ae9cb9e4e8 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/entity/User.java @@ -0,0 +1,37 @@ +package com.baeldung.h2db.lazy_load_no_trans.entity; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import org.hibernate.annotations.Fetch; +import org.hibernate.annotations.FetchMode; +import org.hibernate.annotations.Immutable; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import javax.persistence.OneToMany; +import java.util.ArrayList; +import java.util.List; + +@Entity +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +@Immutable +public class User { + + @Id + @GeneratedValue + private Long id; + + private String name; + + private String comment; + + @OneToMany(mappedBy = "userId") + @Fetch(FetchMode.SUBSELECT) + private List docs = new ArrayList<>(); +} diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/repository/UserRepository.java b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/repository/UserRepository.java new file mode 100644 index 0000000000..bafe484163 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/repository/UserRepository.java @@ -0,0 +1,9 @@ +package com.baeldung.h2db.lazy_load_no_trans.repository; + +import com.baeldung.h2db.lazy_load_no_trans.entity.User; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface UserRepository extends JpaRepository { +} \ No newline at end of file diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/service/ServiceLayer.java b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/service/ServiceLayer.java new file mode 100644 index 0000000000..ff3783fd9d --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/java/com/baeldung/h2db/lazy_load_no_trans/service/ServiceLayer.java @@ -0,0 +1,34 @@ +package com.baeldung.h2db.lazy_load_no_trans.service; + +import com.baeldung.h2db.lazy_load_no_trans.entity.User; +import com.baeldung.h2db.lazy_load_no_trans.repository.UserRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Collection; + +@Service +public class ServiceLayer { + + @Autowired + private UserRepository userRepository; + + @Transactional(readOnly = true) + public long countAllDocsTransactional() { + return countAllDocs(); + } + + public long countAllDocsNonTransactional() { + return countAllDocs(); + } + + private long countAllDocs() { + return userRepository.findAll() + .stream() + .map(User::getDocs) + .mapToLong(Collection::size) + .sum(); + } + +} diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-off.properties b/persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-off.properties new file mode 100644 index 0000000000..b5fb841685 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-off.properties @@ -0,0 +1,13 @@ +spring.datasource.url=jdbc:h2:mem:mydb +spring.datasource.driverClassName=org.h2.Driver +spring.datasource.username=sa +spring.datasource.password= +spring.jpa.hibernate.ddl-auto=create-drop +spring.h2.console.enabled=true +spring.h2.console.path=/h2-console + +logging.level.org.hibernate.SQL=INFO +logging.level.org.hibernate.type=TRACE +spring.jpa.properties.hibernate.validator.apply_to_ddl=false +spring.jpa.properties.hibernate.enable_lazy_load_no_trans=false +spring.jpa.open-in-view=false \ No newline at end of file diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-on.properties b/persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-on.properties new file mode 100644 index 0000000000..04579e1dae --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/main/resources/application-lazy-load-no-trans-on.properties @@ -0,0 +1,13 @@ +spring.datasource.url=jdbc:h2:mem:mydb +spring.datasource.driverClassName=org.h2.Driver +spring.datasource.username=sa +spring.datasource.password= +spring.jpa.hibernate.ddl-auto=create-drop +spring.h2.console.enabled=true +spring.h2.console.path=/h2-console + +logging.level.org.hibernate.SQL=INFO +logging.level.org.hibernate.type=TRACE +spring.jpa.properties.hibernate.validator.apply_to_ddl=false +spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true +spring.jpa.open-in-view=false \ No newline at end of file diff --git a/persistence-modules/spring-boot-persistence-h2/src/main/resources/data.sql b/persistence-modules/spring-boot-persistence-h2/src/main/resources/data.sql index 2d7b446005..b8835e70cb 100644 --- a/persistence-modules/spring-boot-persistence-h2/src/main/resources/data.sql +++ b/persistence-modules/spring-boot-persistence-h2/src/main/resources/data.sql @@ -10,4 +10,17 @@ CREATE TABLE billionaires ( INSERT INTO billionaires (first_name, last_name, career) VALUES ('Aliko', 'Dangote', 'Billionaire Industrialist'), ('Bill', 'Gates', 'Billionaire Tech Entrepreneur'), -('Folrunsho', 'Alakija', 'Billionaire Oil Magnate'); \ No newline at end of file +('Folrunsho', 'Alakija', 'Billionaire Oil Magnate'); + +insert into USER values (101, 'user1', 'comment1'); +insert into USER values (102, 'user2', 'comment2'); +insert into USER values (103, 'user3', 'comment3'); +insert into USER values (104, 'user4', 'comment4'); +insert into USER values (105, 'user5', 'comment5'); + +insert into DOCUMENT values (1, 'doc1', 101); +insert into DOCUMENT values (2, 'doc2', 101); +insert into DOCUMENT values (3, 'doc3', 101); +insert into DOCUMENT values (4, 'doc4', 101); +insert into DOCUMENT values (5, 'doc5', 102); +insert into DOCUMENT values (6, 'doc6', 102); \ No newline at end of file diff --git a/persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOffIntegrationTest.java b/persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOffIntegrationTest.java new file mode 100644 index 0000000000..cb5063d8a4 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOffIntegrationTest.java @@ -0,0 +1,41 @@ +package com.baeldung.lazy_load_no_trans; + +import com.baeldung.h2db.lazy_load_no_trans.LazyLoadNoTransSpringBootApplication; +import com.baeldung.h2db.lazy_load_no_trans.service.ServiceLayer; +import com.vladmihalcea.sql.SQLStatementCountValidator; +import org.hibernate.LazyInitializationException; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.junit4.SpringRunner; + +import static org.junit.Assert.assertEquals; + +@RunWith(SpringRunner.class) +@SpringBootTest(classes = LazyLoadNoTransSpringBootApplication.class) +@ActiveProfiles("lazy-load-no-trans-off") +public class LazyLoadNoTransPropertyOffIntegrationTest { + + @Autowired + private ServiceLayer serviceLayer; + + private static final long EXPECTED_DOCS_COLLECTION_SIZE = 6; + + @Test(expected = LazyInitializationException.class) + public void whenCallNonTransactionalMethodWithPropertyOff_thenThrowException() { + serviceLayer.countAllDocsNonTransactional(); + } + + @Test + public void whenCallTransactionalMethodWithPropertyOff_thenTestPass() { + SQLStatementCountValidator.reset(); + + long docsCount = serviceLayer.countAllDocsTransactional(); + + assertEquals(EXPECTED_DOCS_COLLECTION_SIZE, docsCount); + + SQLStatementCountValidator.assertSelectCount(2); + } +} diff --git a/persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOnIntegrationTest.java b/persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOnIntegrationTest.java new file mode 100644 index 0000000000..5968fde7b7 --- /dev/null +++ b/persistence-modules/spring-boot-persistence-h2/src/test/java/com/baeldung/lazy_load_no_trans/LazyLoadNoTransPropertyOnIntegrationTest.java @@ -0,0 +1,47 @@ +package com.baeldung.lazy_load_no_trans; + +import com.baeldung.h2db.lazy_load_no_trans.LazyLoadNoTransSpringBootApplication; +import com.baeldung.h2db.lazy_load_no_trans.service.ServiceLayer; +import com.vladmihalcea.sql.SQLStatementCountValidator; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.junit4.SpringRunner; + +import static org.junit.Assert.assertEquals; + +@RunWith(SpringRunner.class) +@SpringBootTest(classes = LazyLoadNoTransSpringBootApplication.class) +@ActiveProfiles("lazy-load-no-trans-on") +public class LazyLoadNoTransPropertyOnIntegrationTest { + + @Autowired + private ServiceLayer serviceLayer; + + private static final long EXPECTED_DOCS_COLLECTION_SIZE = 6; + private static final long EXPECTED_USERS_COUNT = 5; + + @Test + public void whenCallNonTransactionalMethodWithPropertyOn_thenGetNplusOne() { + SQLStatementCountValidator.reset(); + + long docsCount = serviceLayer.countAllDocsNonTransactional(); + + assertEquals(EXPECTED_DOCS_COLLECTION_SIZE, docsCount); + + SQLStatementCountValidator.assertSelectCount(EXPECTED_USERS_COUNT + 1); + } + + @Test + public void whenCallTransactionalMethodWithPropertyOn_thenTestPass() { + SQLStatementCountValidator.reset(); + + long docsCount = serviceLayer.countAllDocsTransactional(); + + assertEquals(EXPECTED_DOCS_COLLECTION_SIZE, docsCount); + + SQLStatementCountValidator.assertSelectCount(2); + } +}