Go to file
sharifi 1b22786001 add clean up files
improve code quality
2020-11-12 14:08:02 +03:30
akka-http
akka-streams
algorithms-genetic
algorithms-miscellaneous-1
algorithms-miscellaneous-2
algorithms-miscellaneous-3
algorithms-miscellaneous-4
algorithms-miscellaneous-5
algorithms-miscellaneous-6 Update README.md 2020-10-02 13:22:31 +08:00
algorithms-searching Update README.md 2020-08-20 18:28:49 +08:00
algorithms-sorting
algorithms-sorting-2
animal-sniffer-mvn-plugin
annotations
antlr
apache-cxf
apache-libraries Java-82 Fix test 2020-09-19 13:51:05 +02:00
apache-olingo
apache-poi Update README.md 2020-08-20 13:10:04 +08:00
apache-rocketmq
apache-shiro
apache-spark BAEL-3862: Spark differences DS, DF, RDD (#9976) 2020-10-02 09:46:48 -07:00
apache-tapestry
apache-thrift
apache-tika
apache-velocity
asciidoctor
asm
atomikos
atomix
aws
aws-app-sync
aws-lambda Update README.md 2020-09-16 23:54:01 +08:00
aws-reactive
axon
azure
bazel
blade
bootique
cas
cdi JAVA-2428: Migrate cdi to spring-parent-5 2020-08-24 21:05:12 +02:00
checker-plugin
clojure/ring
cloud-foundry-uaa
code-generation
core-groovy
core-groovy-2
core-groovy-collections
core-groovy-strings Create README.md 2020-09-24 02:53:02 +08:00
core-java-modules add clean up files 2020-11-12 14:08:02 +03:30
core-kotlin-modules Update README.md 2020-09-17 00:09:56 +08:00
core-scala
couchbase
custom-pmd
dagger
data-structures
ddd JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
ddd-modules
deeplearning4j Update README.md 2020-08-20 17:23:09 +08:00
disruptor
docker Delete README.md 2020-08-26 00:50:32 +08:00
dozer
drools JAVA-2904: Fix README.MD files extension 2020-09-16 22:20:32 +02:00
dropwizard
dubbo
eclipse
ethereum
feign BAEL-2626: Update Feign to 10.11 (#10105) 2020-09-29 14:54:05 +02:00
flyway-cdi-extension
geotools
google-cloud
google-web-toolkit
gradle Create README.md 2020-10-02 13:13:08 +08:00
gradle-5 Create README.md 2020-09-16 23:55:27 +08:00
gradle-6
grails
graphql/graphql-java
grpc
gson
guava-modules
guest
guice
hazelcast BAEL-4595: Update hazelcast.xml config file (#10039) 2020-09-16 20:53:28 +02:00
helidon
httpclient BAEL-4448: Added examples for setting TLS version in HttpClient (#9936) 2020-09-24 17:28:05 +01:00
httpclient-2 Update README.md 2020-10-02 13:35:14 +08:00
httpclient-simple
hystrix
image-processing
immutables
intelliJ
jackson-modules Java-82 Fix test 2020-09-19 13:51:05 +02:00
jackson-simple
java-blockchain
java-collections-conversions BAEL-4572: Add List#copyOf and Set#copyOf (#9903) 2020-08-21 14:33:39 +02:00
java-collections-conversions-2 Update README.md 2020-09-24 02:39:41 +08:00
java-collections-maps-3
java-ee-8-security-api
java-jdi
java-lite
java-native [BAEL-4204] JNA (#10113) 2020-10-01 13:13:15 -07:00
java-numbers
java-numbers-2
java-numbers-3
java-numbers-4 Create README.md 2020-08-20 18:15:54 +08:00
java-rmi
java-spi
java-vavr-stream
java-websocket
javafx
javax-servlets Update README.md 2020-08-20 17:55:27 +08:00
javaxval
jaxb
jee-7
jee-7-security
jee-kotlin
jenkins
jersey
jgit Java-1457 Reduce logging - Modules jgit, libraries-testing (#9884) 2020-08-18 17:16:29 +05:30
jgroups
jhipster JAVA-33: Added comments in pom.xml with reason to not upgrade to boot-2 2020-08-26 17:02:39 +05:30
jhipster-5 Java-1458 Reduce logging - jhipster5 2020-08-29 23:04:29 +02:00
jib
jjwt
jmeter JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
jmh Update README.md 2020-08-20 17:39:49 +08:00
jooby
jsf
json Update README.md 2020-09-24 03:36:26 +08:00
json-2 Merge pull request #10029 from Maiklins/Java-2136-update-jackson-version-in-main-pom 2020-09-30 10:53:54 +03:00
json-path
jsoup Update README.md 2020-08-20 13:17:06 +08:00
jta
jws
kaniko
kotlin-js
kotlin-libraries
kotlin-libraries-2
kotlin-quasar
lagom
language-interop
libraries
libraries-2
libraries-3
libraries-4
libraries-5 BAEL-4656: Get available port number for the test (#10096) 2020-09-28 16:29:44 +02:00
libraries-6 BAEL-4075: Validating phone number with libphonenumber (#10111) 2020-09-30 08:38:21 -07:00
libraries-apache-commons
libraries-apache-commons-collections
libraries-apache-commons-io
libraries-concurrency
libraries-data
libraries-data-2 Java-2136 Use Jackson version from main pom in all other applicable modules 2020-09-14 13:11:59 +02:00
libraries-data-db
libraries-data-io
libraries-http Java-2136 Use Jackson version from main pom in all other applicable modules 2020-09-14 13:11:59 +02:00
libraries-http-2 Java-2136 Use Jackson version from main pom in all other applicable modules 2020-09-14 13:11:59 +02:00
libraries-io
libraries-primitive JAVA-2904: Fix README.MD files extension 2020-09-16 22:20:32 +02:00
libraries-rpc
libraries-security Update README.md 2020-09-16 23:47:15 +08:00
libraries-server
libraries-server-2
libraries-testing Update README.md 2020-09-16 22:47:55 +08:00
linkrest
linux-bash
logging-modules [JAVA-1662] Upgraded junit-jupiter version to 5.6.2 2020-09-10 12:26:56 +02:00
lombok Add a new section in Lombok builder article - Minor Fixes 2020-09-19 19:58:33 -03:00
lombok-custom
lucene
machine-learning
mapstruct BAEL-4641: Use MapStruct 1.3.1.Final (#10088) 2020-09-25 13:17:43 +02:00
maven-archetype
maven-modules add modules in parent pom build 2020-09-13 21:05:10 +05:30
maven-polyglot
mesos-marathon
metrics Java-2136 Use Jackson version from main pom in all other applicable modules 2020-09-14 13:11:59 +02:00
micronaut
microprofile
msf4j
muleesb
mustache
mybatis
netflix-modules
netty
ninja
oauth2-framework-impl
open-liberty BAEL-4575: Use copyDependencies feature from the latest liberty-maven-plugin (#9920) 2020-08-27 06:54:29 +02:00
optaplanner
orika
osgi
parent-boot-1
parent-boot-2 JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
parent-java
parent-kotlin
parent-spring-4
parent-spring-5
patterns Update README.md 2020-09-16 23:50:34 +08:00
pdf
performance-tests Merge pull request #9900 from sampada07/JAVA-2382 2020-08-23 11:16:36 +05:30
persistence-modules BAEL-4505 (#10119) 2020-10-02 10:23:50 -07:00
play-framework
pmd
podman
protobuffer
quarkus Merge branch 'master' of https://github.com/eugenp/tutorials 2020-09-18 12:04:36 +03:00
quarkus-extension
rabbitmq
raml JAVA-2904: Fix README.MD files extension 2020-09-16 22:20:32 +02:00
ratpack
reactive-systems
reactor-core Java-75 update intro to reactor core (#9953) 2020-08-31 23:11:46 +05:30
resteasy
restx [JAVA-2540] Migrated unit test to integration test as it bootsraps and calls a REST API 2020-09-10 11:47:44 +02:00
rsocket
rule-engines Create README.md 2020-08-20 12:59:10 +08:00
rxjava-core
rxjava-libraries
rxjava-observables
rxjava-operators
saas
slack
software-security/sql-injection-samples JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spark-java
spf4j
spring-4 JAVA-33: Added comments in pom.xml with reason to not upgrade to boot-2 2020-08-26 17:02:39 +05:30
spring-5
spring-5-data-reactive JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-5-mvc Java-2136 Use Jackson version from main pom in all other applicable modules 2020-09-14 13:11:59 +02:00
spring-5-reactive JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-5-reactive-2 JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-5-reactive-client
spring-5-reactive-oauth JAVA-1638: Get rid of the overriden spring-boot.version property 2020-08-13 22:07:42 +02:00
spring-5-reactive-security Merge pull request #10029 from Maiklins/Java-2136-update-jackson-version-in-main-pom 2020-09-30 10:53:54 +03:00
spring-5-security BAEL-4610: Add {noop} example security config (#10046) 2020-09-17 19:57:53 +02:00
spring-5-security-cognito JAVA-1639: Upgrade spring-5-security-cognito to use latest Spring Boot 2020-08-14 22:07:40 +05:30
spring-5-security-oauth BAEL-3569: Update README (#10053) 2020-09-19 10:40:37 -05:00
spring-5-webflux Update README.md 2020-09-16 22:44:58 +08:00
spring-activiti JAVA-33: Added comments in pom.xml with reason to not upgrade to boot-2 2020-08-26 17:02:39 +05:30
spring-akka
spring-amqp
spring-aop
spring-apache-camel
spring-batch
spring-bom
spring-boot-modules Update README.md 2020-10-02 13:24:04 +08:00
spring-boot-rest
spring-caching JAVA-2421: Merge spring-ehcache module into spring-caching module (#10072) 2020-09-23 23:34:51 +05:30
spring-cloud BAEL-4012 Add Netflix Feign (#10110) 2020-10-02 10:21:18 -07:00
spring-cloud-bus
spring-cloud-cli
spring-cloud-data-flow JAVA-2904: Fix README.MD files extension 2020-09-16 22:20:32 +02:00
spring-core
spring-core-2 BAEL-3715: Sync code and article (#9932) 2020-08-29 10:49:40 +02:00
spring-core-3
spring-core-4
spring-cucumber BAEL-4658: Upgrade to Cucumber 6.8.0 (#10121) 2020-10-02 19:26:00 +02:00
spring-data-rest moved spring-rest-hal-browser to spring-data-rest module (#10019) 2020-09-14 21:53:09 +05:30
spring-data-rest-querydsl
spring-di
spring-di-2
spring-dispatcher-servlet Java-2136 Update Jackson version in main pom 2020-09-14 12:21:57 +02:00
spring-drools [JAVA-2427] Migrated spring-drools to parent-spring-5 (#9964) 2020-09-07 21:32:25 +05:30
spring-ejb Java-1462 Reduce logging - Modules core-java-io-2, spring-ejb-beans, spring-boot-security 2020-08-30 14:35:18 +02:00
spring-exceptions
spring-freemarker
spring-integration
spring-jenkins-pipeline JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-jersey
spring-jinq
spring-jms
spring-jooq BAEL-4518: Upgrade jooq version (#9955) 2020-09-01 16:49:22 +02:00
spring-kafka BAEL-4541: Fix typos in the spring-kafka module (#9857) 2020-08-13 11:38:50 +02:00
spring-katharsis JAVA-33: Moved spring-katharsis to boot-2 2020-08-30 16:51:48 +05:30
spring-ldap
spring-mobile
spring-mockito
spring-mvc-basics JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-mvc-basics-2 [JAVA-2587] Added spring-boot dependency for freemarker 2020-09-22 21:49:49 +02:00
spring-mvc-basics-3 JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-mvc-basics-4 BAEL-4327 update README (#10084) 2020-09-23 21:50:39 -05:00
spring-mvc-crash
spring-mvc-forms-jsp
spring-mvc-forms-thymeleaf
spring-mvc-java JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-mvc-java-2 BAEL-3997 (#10102) 2020-09-28 20:32:37 -07:00
spring-mvc-kotlin
spring-mvc-velocity
spring-mvc-views
spring-mvc-webflow
spring-mvc-xml
spring-protobuf
spring-quartz
spring-reactive-kotlin
spring-reactor
spring-remoting JAVA-33: Added comments in pom.xml with reason to not upgrade to boot-2 2020-08-26 17:02:39 +05:30
spring-rest-angular
spring-rest-compress
spring-rest-http Update README.md 2020-09-16 23:44:29 +08:00
spring-rest-http-2 Update README.md 2020-09-16 22:46:47 +08:00
spring-rest-query-language
spring-rest-shell
spring-rest-simple
spring-rest-testing
spring-resttemplate
spring-resttemplate-2
spring-roo
spring-scheduling added advanced Spring Retry example and removed Spring Retry xml config 2020-09-14 08:16:56 +08:00
spring-security-modules Merge pull request #10025 from kwoyke/JAVA-2404 2020-09-15 20:18:51 +05:30
spring-session JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-shell
spring-sleuth
spring-soap
spring-social-login
spring-spel
spring-state-machine
spring-static-resources
spring-swagger-codegen Java-2136 Use Jackson version from main pom in all other applicable modules 2020-09-14 13:11:59 +02:00
spring-threads
spring-thymeleaf JAVA-2411: Update spring-thymeleaf module and articles 2020-09-12 17:54:33 +05:30
spring-thymeleaf-2 JAVA-2563: Upgrade Spring Boot version to 2.3.3.RELEASE (#9985) 2020-09-11 18:19:02 +05:30
spring-thymeleaf-3 Update README.md 2020-09-16 23:34:14 +08:00
spring-vault
spring-vertx
spring-webflux-amqp
spring-webflux-threads Create README.md 2020-08-20 18:40:15 +08:00
spring-websockets Java-2602 Check spring-websockets PR (#10002) 2020-09-10 22:56:04 +05:30
static-analysis
stripe
structurizr
struts-2
tensorflow-java
terraform
testing-modules BAEL-4659: Upgrade Cucumber to 6.8.0 (#10115) 2020-10-02 19:28:05 +02:00
twilio
twitter4j
undertow
vaadin
vavr
vavr-2
vertx
vertx-and-rxjava
video-tutorials
vraptor
webrtc
wicket
wildfly
xml
xstream
.gitignore [JAVA-2306] Added .sdkmanrc to .gitignore 2020-09-02 20:22:44 +02:00
LICENSE
README.md
baeldung-pmd-rules.xml
book
custom-pmd-0.0.1.jar
pom.xml [BAEL-4204] JNA (#10113) 2020-10-01 13:13:15 -07:00

README.md

UPDATE: The price of "Learn Spring Security OAuth" will permanently change on the 11th of December, along with the upcoming OAuth2 material: http://bit.ly/github-lss

The Courses

Here's the new "Learn Spring" course:
>> LEARN SPRING - THE MASTER CLASS

Here's the Master Class of "REST With Spring" (along with the new announced Boot 2 material):
>> THE REST WITH SPRING - MASTER CLASS

And here's the Master Class of "Learn Spring Security":
>> LEARN SPRING SECURITY - MASTER CLASS

Java and Spring Tutorials

This project is a collection of small and focused tutorials - each covering a single and well defined area of development in the Java ecosystem. A strong focus of these is, of course, the Spring Framework - Spring, Spring Boot and Spring Security. In additional to Spring, the modules here are covering a number of aspects in Java.

Profile based segregation

We are using maven build profiles to segregate the huge list of individual projects we have in our repository.

The projects are broadly divided into 3 list: first, second and heavy.

Next, they are segregated further on the basis of tests that we want to execute.

Therefore, we have a total of 6 profiles:

Profile Includes Type of test enabled
default-first First set of projects *UnitTest
integration-lite-first First set of projects *IntegrationTest
default-second Second set of projects *UnitTest
integration-lite-second Second set of projects *IntegrationTest
default-heavy Heavy/long running projects *UnitTest
integration-heavy Heavy/long running projects *IntegrationTest

Building the project

Though it should not be needed often to build the entire repository at once because we are usually concerned with a specific module.

But if we want to, we can invoke the below command from the root of the repository if we want to build the entire repository with only Unit Tests enabled:

mvn clean install -Pdefault-first,default-second,default-heavy

or if we want to build the entire repository with Integration Tests enabled, we can do:

mvn clean install -Pintegration-lite-first,integration-lite-second,integration-heavy

Building a single module

To build a specific module run the command: mvn clean install in the module directory

Running a Spring Boot module

To run a Spring Boot module run the command: mvn spring-boot:run in the module directory

Working with the IDE

This repo contains a large number of modules. When you're working with an individual module, there's no need to import all of them (or build all of them) - you can simply import that particular module in either Eclipse or IntelliJ.

Running Tests

The command mvn clean install from within a module will run the unit tests in that module. For Spring modules this will also run the SpringContextTest if present.

To run the integration tests, use the command:

mvn clean install -Pintegration-lite-first or

mvn clean install -Pintegration-lite-second or

mvn clean install -Pintegration-heavy

depending on the list where our module exists