Skip to content

Feature/hw 08 mongo db#4

Open
uoles wants to merge 53 commits intomasterfrom
feature/hw-08-mongo-db
Open

Feature/hw 08 mongo db#4
uoles wants to merge 53 commits intomasterfrom
feature/hw-08-mongo-db

Conversation

@uoles
Copy link
Copy Markdown
Owner

@uoles uoles commented Aug 14, 2019

No description provided.

Maksim Kulikov and others added 30 commits April 22, 2019 16:08
- Методы выборки из таблицы книг.
- Добавление Spring Shell.
- Разделение методов на отдельные модули.
- Добавление тестов.
- Изменены запросы книг.
- Добавление внешних ключей для таблицы книг.
- Изменение сущности Book.
- Изменение типа id.
- Использование @jdbcTest.
- Изменение тестов.
- Доработка тестов.
- Связи OneToOne изменены на ManyToOne.
# Conflicts:
#	README.md
#	src/main/java/ru/otus/mkulikov/app/dao/AuthorDaoJpa.java
#	src/test/java/ru/otus/mkulikov/app/dao/AuthorDaoJpaTest.java
#	src/test/java/ru/otus/mkulikov/app/dao/BookDaoJpaTest.java
Maksim Kulikov and others added 22 commits June 21, 2019 17:57
- Добавление классов для обработки сущности Comment и покрытие тестами.
# Conflicts:
#	README.md
#	src/main/java/ru/otus/mkulikov/Application.java
#	src/main/java/ru/otus/mkulikov/app/dao/AuthorDao.java
#	src/main/java/ru/otus/mkulikov/app/dao/AuthorDaoJpa.java
#	src/main/java/ru/otus/mkulikov/app/dao/GenreDao.java
#	src/main/java/ru/otus/mkulikov/app/dao/GenreDaoJpa.java
#	src/main/java/ru/otus/mkulikov/app/service/AuthorManageServiceImpl.java
#	src/main/java/ru/otus/mkulikov/app/service/BookManageSeviceImpl.java
#	src/main/java/ru/otus/mkulikov/app/service/GenreManageServiceImpl.java
#	src/test/java/ru/otus/mkulikov/app/dao/AuthorDaoJpaTest.java
#	src/test/java/ru/otus/mkulikov/app/dao/BookDaoJpaTest.java
#	src/test/java/ru/otus/mkulikov/app/dao/GenreDaoJpaTest.java
#	src/test/resources/schema-test.sql
- Подключение liquibase.
- Возвращаю Optional в DAO.
- Убрана liquibase.
- Переработка тестов.

<dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.mongo</artifactId>
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

А это специально scope не test?

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Да. Подразумевалось, что используется и для самого приложения.

data:
mongodb:
uri: mongodb://localhost
port: 27017
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Если встроенная монга запустится с такими настройками она выбьет штатную службу сервера. Поэтому для тестов (и основного приложения если планируется запуск на встроенной монге) нужно выставлять порт 0

void init() {
authorDao.save(getAuthor(ID_1));
authorDao.save(getAuthor(ID_2));
authorDao.save(getAuthor(ID_3));
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Все, что не тестируем лучше делать через MongoTemplate


@Override
public int deleteAuthor(String id) {
authorDao.deleteById(id);
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

А что будет если у автора есть книги?

banner:
location: "classpath:banner.txt"

jpa:
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

А зачем настройки для JPA?

pom.xml Outdated
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>2.0.8.RELEASE</version>
</dependency>
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В pom много лишнего. Некоторые зависимости можно убрать


@Id
private String id;
private String surname;
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Считается хорошим тоном размечать поля аннотацией @Field с именем поля в коллекции

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants