Micronaut为MySQL配置micronaut-jdbc-tomcat数据源

时间:2019-01-06 16:43:12

标签: micronaut

在开发中,我正在使用以下配置连接到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 个答案:

答案 0 :(得分:2)

在JPA中配置数据源时,您可以利用Hikari;首先,您需要导入以下内容:

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

顺便说一句,使用Tomcat应该只是为此更改一个Hikari:io.micronaut.configuration:jdbc-tomcat,但同样,Hikari更好。

我假设您已经有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}

...您应该一切准备就绪!一个几乎完全的工作示例是here

  

datasources位于application.yml中的根目录,而不是其他任何键的子代。

最后但并非最不重要的一点是,如果您需要添加更多设置来稍微调整数据源配置,则可以参考these设置。

答案 1 :(得分:0)

您需要mysql连接器。

我正在使用此版本。

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

see this site.如果使用的是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