下表總結(jié)了要添加到構(gòu)建中以啟用它們的配置模塊和依賴項(xiàng):
依賴 | 描述 |
---|---|
|
使用 Commons DBCP 配置 SQL 數(shù)據(jù)源 |
|
使用 Hikari 連接池配置 SQL 數(shù)據(jù)源 |
|
使用 Tomcat 連接池配置 SQL 數(shù)據(jù)源 |
|
配置 Hibernate/JPA EntityManagerFactory beans |
|
為 Groovy 應(yīng)用程序配置 GORM for Hibernate |
|
配置 MongoDB 響應(yīng)式驅(qū)動(dòng)程序 |
|
Configures GORM for MongoDB for Groovy applications |
|
Configures the Bolt Java Driver for Neo4j |
|
Configures GORM for Neo4j for Groovy applications |
|
Configures the Reactive MySQL Client |
|
Configures the Reactive Postgres Client |
|
|
|
Configures the Datastax Java Driver for Cassandra |
例如,要添加對(duì) MongoDB 的支持,請(qǐng)?zhí)砑右韵乱蕾図?xiàng):
build.gradle
compile "io.micronaut.mongodb:micronaut-mongo-reactive"
對(duì)于 Groovy 用戶,Micronaut 為 GORM 提供特殊支持。
使用適用于 Hibernate 的 GORM,您不能同時(shí)擁有 hibernate-jpa 和 hibernate-gorm 依賴項(xiàng)。
以下部分將詳細(xì)介紹每個(gè)實(shí)現(xiàn)的配置選項(xiàng)和公開的 bean。
配置 SQL 數(shù)據(jù)源
可以為當(dāng)前提供的三種實(shí)現(xiàn)之一配置 JDBC 數(shù)據(jù)源——默認(rèn)支持 Apache DBCP2、Hikari 和 Tomcat。
配置 JDBC 數(shù)據(jù)源
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;jdbc-tomcat、jdbc-hikari 或 jdbc-dbcp 功能之一,以在您的項(xiàng)目中預(yù)配置一個(gè)簡(jiǎn)單的 JDBC 連接池,以及一個(gè)默認(rèn)的 H2 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序:
$ mn create-app my-app --features jdbc-tomcat
首先,為與您將使用的實(shí)現(xiàn)相對(duì)應(yīng)的 JDBC 配置之一添加依賴項(xiàng)。選擇以下選項(xiàng)之一:
Gradle | Maven |
|
|
Gradle | Maven |
|
|
Gradle | Maven |
|
|
Gradle | Maven |
|
|
此外,將 JDBC 驅(qū)動(dòng)程序依賴項(xiàng)添加到您的構(gòu)建中。例如添加 H2 內(nèi)存數(shù)據(jù)庫(kù):
Gradle | Maven |
|
|
設(shè)置 Hibernate/JPA EntityManager
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;hibernate-jpa 功能以在您的項(xiàng)目中包含 Hibernate JPA 配置:
$ mn create-app my-app --features hibernate-jpa
Micronaut 包括對(duì)配置基于 SQL 數(shù)據(jù)源支持的 Hibernate / JPA EntityManager 的支持。
一旦您配置了一個(gè)或多個(gè)數(shù)據(jù)源以使用 Hibernate,請(qǐng)將 hibernate-jpa 依賴項(xiàng)添加到您的構(gòu)建中:
Gradle | Maven |
|
|
對(duì)于 Groovy 用戶和熟悉 Grails 框架的用戶,可以使用 GORM for Hibernate 的特殊支持。要將 GORM 用于 Hibernate,請(qǐng)不要包括 Micronaut 的內(nèi)置 SQL 支持或 hibernate-jpa 依賴項(xiàng),因?yàn)?nbsp;GORM 本身負(fù)責(zé)創(chuàng)建 DataSource、SessionFactory 等。
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;hibernate-gorm 功能以在您的項(xiàng)目中包含 GORM、基本連接池配置和默認(rèn) H2 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序:
$ mn create-app my-app --features hibernate-gorm
設(shè)置本機(jī) MongoDB 驅(qū)動(dòng)程序
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;mongo-reactive 功能以在您的項(xiàng)目中配置本機(jī) MongoDB 驅(qū)動(dòng)程序:
$ mn create-app my-app --features mongo-reactive
Micronaut 可以自動(dòng)配置原生的 MongoDB Java 驅(qū)動(dòng)程序。要使用它,請(qǐng)將以下依賴項(xiàng)添加到您的構(gòu)建中:
Gradle | Maven |
|
|
然后在你的配置文件(例如 application.yml)中配置 MongoDB 服務(wù)器的 URI:
Configuring a MongoDB server
Properties | Yaml | Toml | Groovy | Hocon | JSON |
|
|
|
|
|
|
mongodb.uri 遵循 MongoDB 連接字符串格式。
然后可以使用非阻塞 Reactive Streams MongoClient 進(jìn)行依賴注入。
要使用阻塞驅(qū)動(dòng)程序,請(qǐng)?jiān)?nbsp;mongo-java-driver 上為您的構(gòu)建添加依賴項(xiàng):
runtimeOnly "org.mongodb:mongo-java-driver"
然后阻塞的 MongoClient 將可用于注入。
Micronaut 專門支持為流行的 Neo4j 圖形數(shù)據(jù)庫(kù)自動(dòng)配置 Neo4j Bolt 驅(qū)動(dòng)程序。
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;neo4j-bolt 功能以在您的項(xiàng)目中配置 Neo4j Bolt 驅(qū)動(dòng)程序:
$ mn create-app my-app --features neo4j-bolt
要配置 Neo4j Bolt 驅(qū)動(dòng)程序,首先將 neo4j-bolt 模塊添加到您的構(gòu)建中:
Gradle | Maven |
|
|
然后在配置文件中配置 Neo4j 服務(wù)器的 URI(例如 application.yml):
Configuring neo4j.uri
Properties | Yaml | Toml | Groovy | Hocon | JSON |
|
|
|
|
|
|
neo4j.uri 設(shè)置必須采用 Neo4j 文檔的連接 URI 部分中描述的格式
完成上述配置后,您可以注入 org.neo4j.driver.v1.Driver bean 的實(shí)例,它具有同步阻塞 API 和基于 CompletableFuture 的非阻塞 API。
Micronaut 支持反應(yīng)式和非阻塞客戶端使用 vertx-pg-client 連接到 Postgres,它可以使用單個(gè)線程處理許多數(shù)據(jù)庫(kù)連接。
配置反應(yīng)式 Postgres 客戶端
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;vertx-pg-client 功能以在您的項(xiàng)目中配置 Reactive Postgres 客戶端:
$ mn create-app my-app --features vertx-pg-client
要配置 Reactive Postgres 客戶端,首先將 vertx-pg-client 模塊添加到您的構(gòu)建中:
build.gradle
compile "io.micronaut.sql:micronaut-vertx-pg-client"
Micronaut 通過(guò) redis-lettuce 模塊為 Redis 自動(dòng)配置 Lettuce 驅(qū)動(dòng)程序。
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;redis-lettuce 功能以在您的項(xiàng)目中配置 Lettuce 驅(qū)動(dòng)程序:
$ mn create-app my-app --features redis-lettuce
要配置 Lettuce 驅(qū)動(dòng)程序,首先將 redis-lettuce 模塊添加到您的構(gòu)建中:
build.gradle
compile "io.micronaut.redis:micronaut-redis-lettuce"
然后在配置文件中配置 Redis 服務(wù)器的 URI(例如 application.yml):
Configuring redis.uri
Properties | Yaml | Toml | Groovy | Hocon | JSON |
|
|
|
|
|
|
redis.uri 設(shè)置必須采用 Lettuce wiki 的連接 URI 部分中描述的格式
您還可以使用 redis.uris 指定多個(gè) Redis URI,在這種情況下,將改為創(chuàng)建 RedisClusterClient。
使用 CLI
如果您使用 Micronaut CLI 創(chuàng)建項(xiàng)目,請(qǐng)?zhí)峁?nbsp;cassandra 功能以在您的項(xiàng)目中包含 Cassandra 配置:
$ mn create-app my-app --features cassandra
要配置 Micronaut 與 Liquibase 的集成,請(qǐng)按照這些說(shuō)明進(jìn)行操作。
要配置 Micronaut 與 Flyway 的集成,請(qǐng)按照以下說(shuō)明進(jìn)行操作
更多建議: