You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
103 lines
4.1 KiB
103 lines
4.1 KiB
plugins {
|
|
id 'nu.studer.jooq'
|
|
id 'io.spring.dependency-management'
|
|
id 'org.springframework.boot' apply false
|
|
}
|
|
|
|
dependencies {
|
|
implementation "org.jooq:jooq:${jooqVersion}"
|
|
implementation "org.jooq:jooq-codegen:${jooqVersion}"
|
|
implementation 'org.springframework.boot:spring-boot-starter-data-jdbc'
|
|
jooqGenerator "mysql:mysql-connector-java:${mysqlConnectorVersion}"
|
|
// include self to use strategy
|
|
jooqGenerator project(':dao')
|
|
}
|
|
|
|
sourceSets {
|
|
main {
|
|
java.srcDirs += 'generated-src/jooq/main/java'
|
|
}
|
|
}
|
|
|
|
jooq {
|
|
version = "${jooqVersion}"
|
|
edition = nu.studer.gradle.jooq.JooqEdition.OSS
|
|
|
|
configurations {
|
|
databasir {
|
|
generateSchemaSourceOnCompilation = true
|
|
generationTool {
|
|
jdbc {
|
|
driver = 'com.mysql.cj.jdbc.Driver'
|
|
url = 'jdbc:mysql://localhost:3306/databasir'
|
|
user = 'root'
|
|
password = '123456'
|
|
properties {
|
|
property {
|
|
key = 'useSSL'
|
|
value = 'false'
|
|
}
|
|
property {
|
|
key = 'allowPublicKeyRetrieval'
|
|
value = 'true'
|
|
}
|
|
}
|
|
}
|
|
generator {
|
|
name = 'org.jooq.codegen.DefaultGenerator'
|
|
database {
|
|
name = 'org.jooq.meta.mysql.MySQLDatabase'
|
|
inputSchema = 'databasir'
|
|
excludes = 'flyway.*'
|
|
forcedTypes {
|
|
forcedType {
|
|
name = 'BOOLEAN'
|
|
includeExpression = 'deleted|enabled|is.*|use_ssl'
|
|
includeTypes = '.*'
|
|
}
|
|
forcedType {
|
|
name = 'varchar'
|
|
includeExpression = '.*'
|
|
includeTypes = 'INET'
|
|
}
|
|
forcedType {
|
|
userType = 'com.databasir.dao.enums.OAuthAppType'
|
|
converter = 'com.databasir.dao.converter.OAuthAppTypeConverter'
|
|
includeExpression = 'app_type'
|
|
includeTypes = '.*'
|
|
}
|
|
forcedType {
|
|
userType = 'com.databasir.dao.enums.DocumentTemplatePropertyType'
|
|
converter = 'com.databasir.dao.converter.DocumentTemplatePropertyTypeConverter'
|
|
includeExpression = 'document_template_property.type'
|
|
includeTypes = '.*'
|
|
}
|
|
forcedType {
|
|
userType = 'com.databasir.dao.enums.MockDataType'
|
|
converter = 'com.databasir.dao.converter.MockDataTypeConverter'
|
|
includeExpression = 'mock_data_rule.mock_data_type'
|
|
includeTypes = '.*'
|
|
}
|
|
forcedType {
|
|
userType = 'com.databasir.dao.enums.ProjectSyncTaskStatus'
|
|
converter = 'com.databasir.dao.converter.ProjectSyncTaskStatusConverter'
|
|
includeExpression = 'project_sync_task.status'
|
|
includeTypes = '.*'
|
|
}
|
|
}
|
|
}
|
|
generate {
|
|
pojos = true
|
|
}
|
|
target {
|
|
packageName = 'com.databasir.dao'
|
|
directory = 'generated-src/jooq/main/java'
|
|
}
|
|
strategy.name = 'com.databasir.dao.strategy.DatabasirPojoNamingStrategy'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
checkstyleMain.source = "src/main/java"
|
|
|