diff --git a/examples/README.md b/examples/README.md
index 1c4f887c..77699970 100644
--- a/examples/README.md
+++ b/examples/README.md
@@ -8,4 +8,5 @@
* *mongo-db-demo* - MongoDB, MongoEventListener, Mongock
* *docker-test-containers* - TestContainers
* *spring-cloud-demo-stvort* - Config server, Eureka, Zuul, Feign client
-* *spring-mail-integration-demo* - SpringMail SpringIntegration
\ No newline at end of file
+* *spring-mail-integration-demo* - SpringMail SpringIntegration
+* *liquibase-demo* - liquibase
\ No newline at end of file
diff --git a/examples/hibernate-fetch-mode-demo/pom.xml b/examples/hibernate-fetch-mode-demo/pom.xml
index 7a38423b..9a767b37 100644
--- a/examples/hibernate-fetch-mode-demo/pom.xml
+++ b/examples/hibernate-fetch-mode-demo/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.1.3.RELEASE
+ 2.2.1.RELEASE
ru.otus.example
@@ -15,7 +15,9 @@
Demo project for Spring Boot
- 1.8
+ 11
+ 11
+ 11
@@ -23,10 +25,11 @@
org.springframework.boot
spring-boot-starter-data-jpa
+
org.springframework.shell
spring-shell-starter
- 2.0.0.RELEASE
+ 2.0.1.RELEASE
@@ -34,16 +37,19 @@
spring-boot-devtools
runtime
+
com.h2database
h2
runtime
+
org.projectlombok
lombok
true
+
org.springframework.boot
spring-boot-starter-test
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/MentorRepository.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/MentorRepository.java
deleted file mode 100644
index 56536df9..00000000
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/MentorRepository.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package ru.otus.example.HibernateFetchModeDemo.repositories;
-
-import ru.otus.example.HibernateFetchModeDemo.models.Mentor;
-
-import java.util.List;
-
-public interface MentorRepository {
- List findAll();
-}
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/StudentRepository.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/StudentRepository.java
deleted file mode 100644
index 82e390cd..00000000
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/StudentRepository.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package ru.otus.example.HibernateFetchModeDemo.repositories;
-
-import ru.otus.example.HibernateFetchModeDemo.models.Student;
-
-import java.util.List;
-
-public interface StudentRepository {
- List findAll();
-}
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/TeacherRepository.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/TeacherRepository.java
deleted file mode 100644
index 1d8cd9d7..00000000
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/TeacherRepository.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package ru.otus.example.HibernateFetchModeDemo.repositories;
-
-import ru.otus.example.HibernateFetchModeDemo.models.Teacher;
-
-import java.util.List;
-
-public interface TeacherRepository {
- List findAll();
-}
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/HibernateFetchModeDemoApplication.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/HibernateFetchModeDemoApplication.java
similarity index 86%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/HibernateFetchModeDemoApplication.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/HibernateFetchModeDemoApplication.java
index 247ba1a5..a8600043 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/HibernateFetchModeDemoApplication.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/HibernateFetchModeDemoApplication.java
@@ -1,4 +1,4 @@
-package ru.otus.example.HibernateFetchModeDemo;
+package ru.otus.example.hibernate_fetch_mode_demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Knowledge.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Knowledge.java
similarity index 85%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Knowledge.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Knowledge.java
index 12ecfddc..0ff496a7 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Knowledge.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Knowledge.java
@@ -1,4 +1,4 @@
-package ru.otus.example.HibernateFetchModeDemo.models;
+package ru.otus.example.hibernate_fetch_mode_demo.models;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Mentor.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Mentor.java
similarity index 93%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Mentor.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Mentor.java
index 66b9934b..2d25b162 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Mentor.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Mentor.java
@@ -1,4 +1,4 @@
-package ru.otus.example.HibernateFetchModeDemo.models;
+package ru.otus.example.hibernate_fetch_mode_demo.models;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Student.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Student.java
similarity index 90%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Student.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Student.java
index b6c564bd..947005b5 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Student.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Student.java
@@ -1,9 +1,8 @@
-package ru.otus.example.HibernateFetchModeDemo.models;
+package ru.otus.example.hibernate_fetch_mode_demo.models;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
-import org.hibernate.annotations.BatchSize;
import org.hibernate.annotations.LazyCollection;
import org.hibernate.annotations.LazyCollectionOption;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Teacher.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Teacher.java
similarity index 94%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Teacher.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Teacher.java
index d010f9e4..d033f511 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/models/Teacher.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/models/Teacher.java
@@ -1,4 +1,4 @@
-package ru.otus.example.HibernateFetchModeDemo.models;
+package ru.otus.example.hibernate_fetch_mode_demo.models;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/MentorRepository.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/MentorRepository.java
new file mode 100644
index 00000000..e0aa59ee
--- /dev/null
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/MentorRepository.java
@@ -0,0 +1,9 @@
+package ru.otus.example.hibernate_fetch_mode_demo.repositories;
+
+import ru.otus.example.hibernate_fetch_mode_demo.models.Mentor;
+
+import java.util.List;
+
+public interface MentorRepository {
+ List findAll();
+}
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/MentorRepositoryImpl.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/MentorRepositoryImpl.java
similarity index 78%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/MentorRepositoryImpl.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/MentorRepositoryImpl.java
index 40644828..d0854709 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/MentorRepositoryImpl.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/MentorRepositoryImpl.java
@@ -1,7 +1,7 @@
-package ru.otus.example.HibernateFetchModeDemo.repositories;
+package ru.otus.example.hibernate_fetch_mode_demo.repositories;
import org.springframework.stereotype.Repository;
-import ru.otus.example.HibernateFetchModeDemo.models.Mentor;
+import ru.otus.example.hibernate_fetch_mode_demo.models.Mentor;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/StudentRepository.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/StudentRepository.java
new file mode 100644
index 00000000..a477ddcc
--- /dev/null
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/StudentRepository.java
@@ -0,0 +1,9 @@
+package ru.otus.example.hibernate_fetch_mode_demo.repositories;
+
+import ru.otus.example.hibernate_fetch_mode_demo.models.Student;
+
+import java.util.List;
+
+public interface StudentRepository {
+ List findAll();
+}
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/StudentRepositoryImpl.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/StudentRepositoryImpl.java
similarity index 77%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/StudentRepositoryImpl.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/StudentRepositoryImpl.java
index 7588055e..d4b80e65 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/StudentRepositoryImpl.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/StudentRepositoryImpl.java
@@ -1,7 +1,7 @@
-package ru.otus.example.HibernateFetchModeDemo.repositories;
+package ru.otus.example.hibernate_fetch_mode_demo.repositories;
import org.springframework.stereotype.Repository;
-import ru.otus.example.HibernateFetchModeDemo.models.Student;
+import ru.otus.example.hibernate_fetch_mode_demo.models.Student;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/TeacherRepository.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/TeacherRepository.java
new file mode 100644
index 00000000..9c230a3c
--- /dev/null
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/TeacherRepository.java
@@ -0,0 +1,9 @@
+package ru.otus.example.hibernate_fetch_mode_demo.repositories;
+
+import ru.otus.example.hibernate_fetch_mode_demo.models.Teacher;
+
+import java.util.List;
+
+public interface TeacherRepository {
+ List findAll();
+}
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/TeacherRepositoryImpl.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/TeacherRepositoryImpl.java
similarity index 77%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/TeacherRepositoryImpl.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/TeacherRepositoryImpl.java
index 5e86da65..703aab92 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/repositories/TeacherRepositoryImpl.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/repositories/TeacherRepositoryImpl.java
@@ -1,7 +1,7 @@
-package ru.otus.example.HibernateFetchModeDemo.repositories;
+package ru.otus.example.hibernate_fetch_mode_demo.repositories;
import org.springframework.stereotype.Repository;
-import ru.otus.example.HibernateFetchModeDemo.models.Teacher;
+import ru.otus.example.hibernate_fetch_mode_demo.models.Teacher;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/shell/ShellCommands.java b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/shell/ShellCommands.java
similarity index 75%
rename from examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/shell/ShellCommands.java
rename to examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/shell/ShellCommands.java
index 900e0bd6..5c2ba3fe 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/HibernateFetchModeDemo/shell/ShellCommands.java
+++ b/examples/hibernate-fetch-mode-demo/src/main/java/ru/otus/example/hibernate_fetch_mode_demo/shell/ShellCommands.java
@@ -1,13 +1,13 @@
-package ru.otus.example.HibernateFetchModeDemo.shell;
+package ru.otus.example.hibernate_fetch_mode_demo.shell;
import org.springframework.shell.standard.ShellComponent;
import org.springframework.shell.standard.ShellMethod;
-import ru.otus.example.HibernateFetchModeDemo.models.Mentor;
-import ru.otus.example.HibernateFetchModeDemo.models.Student;
-import ru.otus.example.HibernateFetchModeDemo.models.Teacher;
-import ru.otus.example.HibernateFetchModeDemo.repositories.MentorRepository;
-import ru.otus.example.HibernateFetchModeDemo.repositories.StudentRepository;
-import ru.otus.example.HibernateFetchModeDemo.repositories.TeacherRepository;
+import ru.otus.example.hibernate_fetch_mode_demo.models.Mentor;
+import ru.otus.example.hibernate_fetch_mode_demo.models.Student;
+import ru.otus.example.hibernate_fetch_mode_demo.models.Teacher;
+import ru.otus.example.hibernate_fetch_mode_demo.repositories.MentorRepository;
+import ru.otus.example.hibernate_fetch_mode_demo.repositories.StudentRepository;
+import ru.otus.example.hibernate_fetch_mode_demo.repositories.TeacherRepository;
import java.util.stream.Collectors;
diff --git a/examples/hibernate-fetch-mode-demo/src/main/resources/schema.sql b/examples/hibernate-fetch-mode-demo/src/main/resources/schema.sql
index 0c3b4087..0b366451 100644
--- a/examples/hibernate-fetch-mode-demo/src/main/resources/schema.sql
+++ b/examples/hibernate-fetch-mode-demo/src/main/resources/schema.sql
@@ -8,22 +8,22 @@ DROP TABLE IF EXISTS knowledge;
CREATE TABLE knowledge (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
- name VARCHAR(255),
+ name VARCHAR(255)
);
CREATE TABLE students (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
- name VARCHAR(255),
+ name VARCHAR(255)
);
CREATE TABLE mentors (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
- name VARCHAR(255),
+ name VARCHAR(255)
);
CREATE TABLE teachers (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
- name VARCHAR(255),
+ name VARCHAR(255)
);
CREATE TABLE students_experience (
diff --git a/examples/hibernate-fetch-mode-demo/src/test/resources/application.yml b/examples/hibernate-fetch-mode-demo/src/test/resources/application.yml
deleted file mode 100644
index 8b137891..00000000
--- a/examples/hibernate-fetch-mode-demo/src/test/resources/application.yml
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/examples/liquibase-demo/.gitignore b/examples/liquibase-demo/.gitignore
new file mode 100644
index 00000000..e62c33c2
--- /dev/null
+++ b/examples/liquibase-demo/.gitignore
@@ -0,0 +1,4 @@
+.idea/
+*.iml
+
+target/
diff --git a/examples/liquibase-demo/README.md b/examples/liquibase-demo/README.md
new file mode 100644
index 00000000..2a2f0784
--- /dev/null
+++ b/examples/liquibase-demo/README.md
@@ -0,0 +1,6 @@
+## Пример работы с liquibase
+
+В примере демонстрируется:
+* *структура файлов changelog-ов в YAML-формате*
+* *создание таблицы user средствами liquibase*
+* *наполнение созданной таблицы данными средствами liquibase*
diff --git a/examples/liquibase-demo/pom.xml b/examples/liquibase-demo/pom.xml
new file mode 100644
index 00000000..07178c5d
--- /dev/null
+++ b/examples/liquibase-demo/pom.xml
@@ -0,0 +1,50 @@
+
+
+ 4.0.0
+
+ ru.otus
+ liquibase-demo
+ 1.0-SNAPSHOT
+
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.2.1.RELEASE
+
+
+
+ 11
+ 11
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
+
+ com.h2database
+ h2
+ 1.4.200
+
+
+ org.liquibase
+ liquibase-core
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
diff --git a/examples/liquibase-demo/src/main/java/ru/otus/spring/Main.java b/examples/liquibase-demo/src/main/java/ru/otus/spring/Main.java
new file mode 100644
index 00000000..5406a277
--- /dev/null
+++ b/examples/liquibase-demo/src/main/java/ru/otus/spring/Main.java
@@ -0,0 +1,12 @@
+package ru.otus.spring;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class Main {
+
+ public static void main(String[] args) {
+ SpringApplication.run(Main.class);
+ }
+}
diff --git a/examples/liquibase-demo/src/main/resources/application.yaml b/examples/liquibase-demo/src/main/resources/application.yaml
new file mode 100644
index 00000000..c0a725f3
--- /dev/null
+++ b/examples/liquibase-demo/src/main/resources/application.yaml
@@ -0,0 +1,3 @@
+spring:
+ h2.console.enabled: true
+ liquibase.enabled: true
diff --git a/examples/liquibase-demo/src/main/resources/db/changelog/1.0/2019-01-11--0001-user.yaml b/examples/liquibase-demo/src/main/resources/db/changelog/1.0/2019-01-11--0001-user.yaml
new file mode 100644
index 00000000..6fd90e2b
--- /dev/null
+++ b/examples/liquibase-demo/src/main/resources/db/changelog/1.0/2019-01-11--0001-user.yaml
@@ -0,0 +1,20 @@
+databaseChangeLog:
+- changeSet:
+ id: 2018-01-11--0001--user
+ author: ydvorzhetskiy
+ createTable:
+ tableName: user
+ columns:
+ - column:
+ name: id
+ type: varchar(32)
+ constraints:
+ nullable: false
+ primaryKey: true
+ primaryKeyName: pk_user
+ - column:
+ name: login
+ type: varchar(50)
+ - column:
+ name: password
+ type: varchar(50)
diff --git a/examples/liquibase-demo/src/main/resources/db/changelog/data/0001-users.yaml b/examples/liquibase-demo/src/main/resources/db/changelog/data/0001-users.yaml
new file mode 100644
index 00000000..534f3329
--- /dev/null
+++ b/examples/liquibase-demo/src/main/resources/db/changelog/data/0001-users.yaml
@@ -0,0 +1,15 @@
+databaseChangeLog:
+- changeSet:
+ id: 0001-user-test-data
+ author: ydvorzhetskiy
+ context: test
+ runOnChange: true
+ loadUpdateData:
+ primaryKey: id
+ file: data/user.csv
+ relativeToChangelogFile: true
+ separator: ;
+ quotChar: '"'
+ seperator: ';'
+ encoding: UTF-8
+ tableName: user
diff --git a/examples/liquibase-demo/src/main/resources/db/changelog/data/data/user.csv b/examples/liquibase-demo/src/main/resources/db/changelog/data/data/user.csv
new file mode 100644
index 00000000..df158f7f
--- /dev/null
+++ b/examples/liquibase-demo/src/main/resources/db/changelog/data/data/user.csv
@@ -0,0 +1,4 @@
+id;login;password
+502ccf7de30f433588a406865e66fd03;root;123123
+54fca574a4974ef1a983124c905605f6;masha;123123
+ce063766716f47c2b130d1f28f010e1c;ivan;123123
diff --git a/examples/liquibase-demo/src/main/resources/db/changelog/db.changelog-master.yaml b/examples/liquibase-demo/src/main/resources/db/changelog/db.changelog-master.yaml
new file mode 100644
index 00000000..0c6b5856
--- /dev/null
+++ b/examples/liquibase-demo/src/main/resources/db/changelog/db.changelog-master.yaml
@@ -0,0 +1,5 @@
+databaseChangeLog:
+- includeAll:
+ path: db/changelog/1.0/
+- includeAll:
+ path: db/changelog/data/
diff --git a/examples/mongo-db-demo/pom.xml b/examples/mongo-db-demo/pom.xml
index f86c68d6..76744a32 100644
--- a/examples/mongo-db-demo/pom.xml
+++ b/examples/mongo-db-demo/pom.xml
@@ -2,12 +2,14 @@
4.0.0
+
org.springframework.boot
spring-boot-starter-parent
- 2.1.8.RELEASE
+ 2.2.1.RELEASE
+
ru.otus.example
mongo-db-demo
0.0.1-SNAPSHOT
@@ -18,6 +20,7 @@
11
11
11
+ 2.0.2
@@ -25,6 +28,7 @@
org.springframework.boot
spring-boot-starter-data-mongodb
+
@@ -36,19 +40,13 @@
com.github.cloudyrock.mongock
mongock-spring
- 2.0.0
+ ${mongock.version}
org.springframework.boot
spring-boot-starter-test
test
-
-
- org.assertj
- org.assertj.core
-
-
@@ -76,21 +74,21 @@
org.mockito
mockito-core
- 2.21.0
+ ${mockito.version}
test
org.mockito
mockito-junit-jupiter
- 2.23.0
+ ${mockito.version}
test
org.assertj
assertj-core
- 3.12.0
+ ${assertj.version}
test
diff --git a/examples/spring-cloud-demo-stvort/.gitignore b/examples/spring-cloud-demo-stvort/.gitignore
new file mode 100644
index 00000000..153c9335
--- /dev/null
+++ b/examples/spring-cloud-demo-stvort/.gitignore
@@ -0,0 +1,29 @@
+HELP.md
+/target/
+!.mvn/wrapper/maven-wrapper.jar
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+/build/
+
+### VS Code ###
+.vscode/
diff --git a/examples/spring-cloud-demo-stvort/config-server/pom.xml b/examples/spring-cloud-demo-stvort/config-server/pom.xml
index 80820842..6a74e3d8 100644
--- a/examples/spring-cloud-demo-stvort/config-server/pom.xml
+++ b/examples/spring-cloud-demo-stvort/config-server/pom.xml
@@ -2,12 +2,14 @@
4.0.0
+
org.springframework.boot
spring-boot-starter-parent
- 2.1.4.RELEASE
+ 2.2.1.RELEASE
+
ru.otus.example
config-server
0.0.1-SNAPSHOT
@@ -15,8 +17,10 @@
Config server
- 1.8
- Greenwich.SR1
+ 11
+ 11
+ 11
+ Hoxton.RELEASE
diff --git a/examples/spring-cloud-demo-stvort/facade-gateway/pom.xml b/examples/spring-cloud-demo-stvort/facade-gateway/pom.xml
index ed9c9a52..8872c95a 100644
--- a/examples/spring-cloud-demo-stvort/facade-gateway/pom.xml
+++ b/examples/spring-cloud-demo-stvort/facade-gateway/pom.xml
@@ -2,12 +2,14 @@
4.0.0
+
org.springframework.boot
spring-boot-starter-parent
- 2.1.4.RELEASE
+ 2.2.1.RELEASE
+
ru.otus.example
facade-gateway
0.0.1-SNAPSHOT
@@ -15,8 +17,10 @@
Facade gateway
- 1.8
- Greenwich.SR1
+ 11
+ 11
+ 11
+ Hoxton.RELEASE
diff --git a/examples/spring-cloud-demo-stvort/greeting-microservice/pom.xml b/examples/spring-cloud-demo-stvort/greeting-microservice/pom.xml
index 0a61c9ea..e37aa1d6 100644
--- a/examples/spring-cloud-demo-stvort/greeting-microservice/pom.xml
+++ b/examples/spring-cloud-demo-stvort/greeting-microservice/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.1.4.RELEASE
+ 2.2.1.RELEASE
ru.otus.example
@@ -15,10 +15,10 @@
Greeting microservice
- 1.8
- 1.8
- 1.8
- Greenwich.SR1
+ 11
+ 11
+ 11
+ Hoxton.RELEASE
diff --git a/examples/spring-cloud-demo-stvort/names-microservice/pom.xml b/examples/spring-cloud-demo-stvort/names-microservice/pom.xml
index 4dff1f3f..b1c3806a 100644
--- a/examples/spring-cloud-demo-stvort/names-microservice/pom.xml
+++ b/examples/spring-cloud-demo-stvort/names-microservice/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.1.4.RELEASE
+ 2.2.1.RELEASE
ru.otus.example
@@ -15,10 +15,10 @@
Names microservice
- 1.8
- Greenwich.SR1
- 1.8
- 1.8
+ 11
+ 11
+ 11
+ Hoxton.RELEASE
diff --git a/examples/spring-cloud-demo-stvort/pom.xml b/examples/spring-cloud-demo-stvort/pom.xml
new file mode 100644
index 00000000..b037aacd
--- /dev/null
+++ b/examples/spring-cloud-demo-stvort/pom.xml
@@ -0,0 +1,20 @@
+
+
+ 4.0.0
+
+ ru.otus
+ spring-cloud-demo-stvort
+ 1.0
+
+ pom
+
+
+ config-server
+ service-discovery-server
+ greeting-microservice
+ names-microservice
+ facade-gateway
+
+
diff --git a/examples/spring-cloud-demo-stvort/service-discovery-server/pom.xml b/examples/spring-cloud-demo-stvort/service-discovery-server/pom.xml
index 9bb1f4bd..b8ff9ab0 100644
--- a/examples/spring-cloud-demo-stvort/service-discovery-server/pom.xml
+++ b/examples/spring-cloud-demo-stvort/service-discovery-server/pom.xml
@@ -2,12 +2,14 @@
4.0.0
+
org.springframework.boot
spring-boot-starter-parent
- 2.1.4.RELEASE
-
+ 2.2.1.RELEASE
+
+
ru.otus.example
service-discovery-server
0.0.1-SNAPSHOT
@@ -15,8 +17,10 @@
Service discovery server
- 1.8
- Greenwich.SR1
+ 11
+ 11
+ 11
+ Hoxton.RELEASE
@@ -24,14 +28,17 @@
org.springframework.boot
spring-boot-starter
+
org.springframework.cloud
spring-cloud-starter-netflix-eureka-server
+
org.springframework.cloud
spring-cloud-config-client
+
javax.xml.bind
jaxb-api
diff --git a/examples/spring-mail-integration-demo/pom.xml b/examples/spring-mail-integration-demo/pom.xml
index 150c451b..6b2b9b0a 100644
--- a/examples/spring-mail-integration-demo/pom.xml
+++ b/examples/spring-mail-integration-demo/pom.xml
@@ -2,12 +2,14 @@
4.0.0
+
org.springframework.boot
spring-boot-starter-parent
- 2.1.9.RELEASE
+ 2.2.1.RELEASE
+
ru.otus.example
spring-mail-integration-demo
0.0.1-SNAPSHOT
@@ -16,6 +18,8 @@
11
+ 11
+ 11
diff --git a/examples/spring-mail-integration-demo/src/main/java/ru/otus/example/springmail_integration_demo/integration/IntegrationConfig.java b/examples/spring-mail-integration-demo/src/main/java/ru/otus/example/springmail_integration_demo/integration/IntegrationConfig.java
index 9219fe1d..98b82c57 100644
--- a/examples/spring-mail-integration-demo/src/main/java/ru/otus/example/springmail_integration_demo/integration/IntegrationConfig.java
+++ b/examples/spring-mail-integration-demo/src/main/java/ru/otus/example/springmail_integration_demo/integration/IntegrationConfig.java
@@ -69,7 +69,8 @@ public class IntegrationConfig {
.handle(m -> {
val isImportant = m.getHeaders().get(IS_IMPORTANT_MESSAGE, Boolean.class);
if (isImportant != null && isImportant) {
- mailSender.send((SimpleMailMessage) m.getPayload());
+ System.out.println("Как будто посылаем письмо: " + m.getPayload());
+ //mailSender.send((SimpleMailMessage) m.getPayload());
}
})
)
diff --git a/examples/unit-testing-pure-spring/pom.xml b/examples/unit-testing-pure-spring/pom.xml
index 3970674c..43bd68de 100644
--- a/examples/unit-testing-pure-spring/pom.xml
+++ b/examples/unit-testing-pure-spring/pom.xml
@@ -2,12 +2,6 @@
4.0.0
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.1.3.RELEASE
-
-
ru.otus
testing-example
@@ -16,16 +10,21 @@
Unit testing example
- 1.8
- 1.18.6
- 5.1.5.RELEASE
+ 11
+ 11
+ 11
+ 1.18.10
+ 5.2.1.RELEASE
+ 5.5.2
+ 2.28.2
+ 3.13.2
org.projectlombok
lombok
- 1.18.6
+ ${lombok.version}
true
@@ -33,14 +32,14 @@
org.springframework
spring-context
- 5.1.5.RELEASE
+ ${spring.version}
org.springframework
spring-test
- 5.1.5.RELEASE
+ ${spring.version}
test
@@ -48,19 +47,21 @@
org.junit.jupiter
junit-jupiter-api
- 5.3.2
+ ${junit.jupiter.version}
test
+
org.junit.jupiter
junit-jupiter-engine
- 5.3.2
+ ${junit.jupiter.version}
test
+
org.junit.jupiter
junit-jupiter-params
- 5.3.2
+ ${junit.jupiter.version}
test
@@ -68,13 +69,14 @@
org.mockito
mockito-core
- 2.21.0
+ ${mockito.version}
test
+
org.mockito
mockito-junit-jupiter
- 2.23.0
+ ${mockito.version}
test
@@ -82,7 +84,7 @@
org.assertj
assertj-core
- 3.12.0
+ ${assertj.version}
test
diff --git a/examples/unit-testing-spring-boot/pom.xml b/examples/unit-testing-spring-boot/pom.xml
index 3c41c6c8..129d75a3 100644
--- a/examples/unit-testing-spring-boot/pom.xml
+++ b/examples/unit-testing-spring-boot/pom.xml
@@ -5,8 +5,8 @@
org.springframework.boot
spring-boot-starter-parent
- 2.1.3.RELEASE
-
+ 2.2.1.RELEASE
+
ru.otus
@@ -16,7 +16,9 @@
Unit testing example
- 1.8
+ 11
+ 11
+ 11
@@ -37,13 +39,6 @@
org.springframework.boot
spring-boot-starter-test
test
-
-
-
- org.junit
- junit
-
-
@@ -53,18 +48,21 @@
${junit-jupiter.version}
test
+
org.junit.jupiter
junit-jupiter-engine
${junit-jupiter.version}
test
+
org.junit.jupiter
junit-jupiter-params
${junit-jupiter.version}
test
+
org.mockito
mockito-junit-jupiter