Micronaut Настройка micronaut-jdbc-tomcat Источник данных для MySQL

В разработке я использую приведенную ниже конфигурацию для подключения к базе данных MySQL. Мне нравится использовать источник данных Tomcat для MySql Connection. Не нашел пример на странице документа Micronaut.

Какие изменения необходимы в файле application.yaml для использования источника данных Tomcat?

---
datasources.default: {}
---
hibernate:
  hbm2ddl:
    auto: update
  cache:
    queries: false
    use_second_level_cache: true
    use_query_cache: false
    region.factory_class: org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory
dataSource:
  url: jdbc:mysql://localhost:3306/db
  dbCreate: create-update
  pooled: true
  jmxExport: true
  driverClassName: com.mysql.cj.jdbc.Driver
  dialect: org.hibernate.dialect.MySQL5InnoDBDialect
  username:  
  password:

2 ответа

При настройке источника данных в JPA вы можете воспользоваться Hikari; сначала вам нужно будет импортировать эти:

implementation "io.micronaut.configuration:micronaut-hibernate-jpa"
implementation "io.micronaut.configuration:micronaut-jdbc-hikari"

Кстати, использование Tomcat должно быть вопросом изменения Hikari для этого: io.micronaut.configuration:jdbc-tomcatНо опять же, Хикари намного лучше.

Я предполагаю, что у вас уже есть micronaut-hibernate-jpaНо я все равно это выразил. Кроме того, вы также можете добавить H2 как runtimeOnly (лайк runtimeOnly "com.h2database:h2") так что проще запустить и протестировать приложение.

После этого все, что вам нужно, это добавить их в свой application.yml:

datasources:
  default:
    driverClassName: ${JDBC_DRIVER:org.h2.Driver}
    password: ${JDBC_PASSWORD:""}
    url: ${JDBC_URL:`jdbc:h2:mem:test_db;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE;MODE=PostgreSQL`}
    username: ${JDBC_USER:sa}

... и вы должны быть готовы! Почти полностью рабочий пример здесь.

datasources находится в корне в application.yml, а не как ребенок любого другого ключа (ей).

И последнее, но не менее важное: если вам нужно добавить больше настроек, чтобы немного подправить конфигурацию источника данных, вы можете ссылаться на эти настройки.

Вам нужен разъем MySQL.

Я использую эту версию.

compile group: 'mysql', name: 'mysql-connector-java', version:'5.1.47'

увидеть этот сайт. Если вы используете Mysql 5.x, вам нужны драйверы 5.x и использование driverClassName: "com.mysql.jdbc.Driver", Но если вы используете Mysql 8.x, вам нужен драйвер 8.x и использование driverClassName: "com.mysql.cj.jdbc.Driver"

это зависит от вашей версии Mysql.

и вам нужно одно из этого:

compile "io.micronaut.configuration:micronaut-hibernate-jpa"
compile "io.micronaut.configuration:micronaut-jdbc-hikari"

или вы можете использовать

compile "io.micronaut.configuration:micronaut-jdbc-tomcat"
compile "io.micronaut.configuration:micronaut-hibernate-jpa"

см. это руководство:

http://guides.micronaut.io/micronaut-data-access-jpa-hibernate/guide/index.html

Другие вопросы по тегам