Spring Boot + Spring Data JPA + MySQL(Hikari Connection Pool)

В этой статье мы научимся создавать приложение с помощью Spring Boot + Spring Data JPA + MySQL + пул соединений HikariCP
Технологии:

  1. Spring Boot 1.5.9.RELEASE
  2. Spring Data 1.11.9.RELEASE
  3. Hibernate 5.0.12 Final
  4. MySQL Server 5.7.19-17
  5. MySQL JDBC driver 5.1.44
  6. Hikari Connection Pool 2.7.6
  7. Maven
  8. Java 8

1. Структура каталогов

2. Зависимости

Объявляем spring-boot-starter-data-jpa, он объединяет в себе Spring Data, Hibernate и соответственно JPA.

3. Java Persistence API – JPA

3.1 Модель User JPA

[stextbox id=’alert’ caption=’Требования к Entity классам’]

Должен иметь пустой конструктор (public или protected);

Не может быть вложенным, интерфейсом или enum;

Не может быть final и не может содержать final-полей/свойств;

Должен содержать хотя бы одно @Id-поле.

[/stextbox]

4. Configuration + Database Initialization

4.1 Configure Oracle data source, HikariCP settings and show Hibernate query.

4.2 Если import.sql найден, Hibernate автоматически его импортирует

5. @Repository

5.1 Создаем интерфейс и наследуемся от Spring Data CrudRepository

Нет необходимости в реализации, данные Spring создадут общую реализацию по имени поля, например findByfieldName (). Подробнее working with Spring Data Repositories

6. Spring Boot Starter

Начиная с версии Spring Boot 1.5 методы вызывающие репозитории должны быть помечены аннотацией, что бы была открыта сессия во время их вызова

8. Запуск приложения

Ссылки

  1. Initialize a database using JPA
  2. Spring boot ddl auto generator
  3. Spring Data Commons – Reference Documentation
  4. Accessing Data with JPA
  5. Spring-boot-spring-data-jpa-oracle-example
Подписаться
Уведомлять о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 комментариев
старым
новым колличеству голосов
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
Leo Dev Blog | LD
Обзор конфиденциальности

На сайте используются обязательные и аналитические файлы cookie.

Обязательные cookie необходимы для корректной работы сайта.

Аналитические cookie используются для анализа посещаемости и улучшения работы сайта.

Вы можете изменить настройки использования cookie.