Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在同一spring引导服务中从两个数据源使用jooq生成POJO_Java_Spring Boot_Jooq - Fatal编程技术网

Java 如何在同一spring引导服务中从两个数据源使用jooq生成POJO

Java 如何在同一spring引导服务中从两个数据源使用jooq生成POJO,java,spring-boot,jooq,Java,Spring Boot,Jooq,我想使用相同的spring boot服务中的两个数据源(两个单独的MySQL数据库托管在单独的AWS RDS上)生成POJO。我该怎么做 我怀疑这里是否可以使用以下内容: jooq { DBONE(sourceSets.main) { jdbc { driver = 'com.mysql.cj.jdbc.Driver' url = ... user = ... password

我想使用相同的spring boot服务中的两个数据源(两个单独的MySQL数据库托管在单独的AWS RDS上)生成POJO。我该怎么做

我怀疑这里是否可以使用以下内容:

jooq {
    DBONE(sourceSets.main) {
        jdbc {
            driver = 'com.mysql.cj.jdbc.Driver'
            url = ...
            user = ...
            password = ...
        }
        generator {
            database {
                includes = '<DB_ONE>.*'
            }
            generate {
                relations = true
                records = true
                pojos = true...
            }
            target {
                packageName = 'com.abcd.jooq'
                directory = 'build/src/generated/java'
            }
        }
    }

    DBTWO(sourceSets.main) {
        jdbc {
            driver = 'com.mysql.cj.jdbc.Driver'
            url = ...
            user = ...
            password = ...
        }
        generator {
            database {
                includes = '<DB_TWO>.*'
            }
            generate {
                relations = true
                records = true
                pojos = true...
            }
            target {
                packageName = 'com.abcd.jooq'
                directory = 'build/src/generated/java'
            }
        }
    }
}
jooq{
DBONE(sourceset.main){
jdbc{
driver='com.mysql.cj.jdbc.driver'
url=。。。
用户=。。。
密码=。。。
}
发电机{
数据库{
包括=“*”
}
产生{
关系=真
记录=真
pojos=真。。。
}
目标{
packageName='com.abcd.jooq'
目录='build/src/generated/java'
}
}
}
DBTWO(sourceset.main){
jdbc{
driver='com.mysql.cj.jdbc.driver'
url=。。。
用户=。。。
密码=。。。
}
发电机{
数据库{
包括=“*”
}
产生{
关系=真
记录=真
pojos=真。。。
}
目标{
packageName='com.abcd.jooq'
目录='build/src/generated/java'
}
}
}
}

我注意到,在构建spring引导应用程序之后,只能找到一个config.xml。和仅为一个数据源生成的POJO。任何人都可以建议任何人这样做吗?

您不能让两次生成运行在同一个包中生成代码。每一代配置都拥有自己的包,并将删除不属于它的所有内容

您有两个选择:

  • 使用不同的目标包
  • 使用一些开发代码生成数据源,允许您从同一台服务器访问两个数据库,例如使用,甚至

是的,我试着让软件包保持不同,结果成功了。