最近学习在spring boot中使用jooq,记录一下spring boot配置jooq的过程。
我使用的是gradle项目
1.添加依赖
dependencies{
...
implementation group: 'org.jooq', name: 'jooq', version: '3.14.9'
implementation group: 'org.jooq', name: 'jooq-meta', version: '3.14.9'
implementation group: 'org.jooq', name: 'jooq-codegen', version: '3.14.9'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-jooq', version: '2.4.5'
implementation group: 'mysql', name: 'mysql-connector-java', version: '8.0.24'
//配置jooqGenerator使用的数据库驱动
jooqGenerator group: 'mysql', name: 'mysql-connector-java', version: '8.0.24'
...
2.添加plugin
使用gradle的jooq插件来进行jooq配置。插件GitHub页
plugins{
...
id 'nu.studer.jooq' version '5.2.1'
...
}
3.配置JOOQ
官方例子
jooq {
version = '3.14.7' // default (can be omitted)
edition = nu.studer.gradle.jooq.JooqEdition.OSS // default (can be omitted)
configurations {
main { // name of the jOOQ configuration
generateSchemaSourceOnCompilation = true // default (can be omitted)
generationTool {
logging = org.jooq.meta.jaxb.Logging.WARN
jdbc {
driver = 'com.mysql.cj.jdbc.Driver'
url = 'jdbc:mysql://localhost:3306/sample'
user = 'some_user'
password = 'some_secret'
properties {
property {
key = 'ssl'
value = 'true'
}
}
}
generator {
name = 'org.jooq.codegen.DefaultGenerator'
database {
//根据数据库选择对应方言类,
name = 'org.jooq.meta.mysql.MySQLDatabase'
inputSchema = 'public'
forcedTypes {
forcedType {
name = 'varchar'
includeExpression = '.*'
includeTypes = 'JSONB?'
}
forcedType {
name = 'varchar'
includeExpression = '.*'
includeTypes = 'INET'
}
}
}
generate {
deprecated = false
records = true
immutablePojos = true
fluentSetters = true
}
target {
packageName = 'nu.studer.sample'
directory = 'build/generated-src/jooq/main' // default (can be omitted)
}
strategy.name = 'org.jooq.codegen.DefaultGeneratorStrategy'
}
}
}
}
}
本文介绍如何在SpringBoot项目中使用Gradle配置并集成Jooq,包括添加依赖、配置插件及具体配置步骤。
908

被折叠的 条评论
为什么被折叠?



