在Jooq中整合Hikari池

时间:2019-01-19 19:15:11

标签: mysql database java-8 jooq

我正在尝试在当前项目(这是用Java编写)中第一次使用jooq。我想在Jooq DSL上下文中集成Hikari连接池。我想明确定义最大连接数。任何推荐的文章,我可以遵循的代码。

谢谢

我已经设置了jooq,现在可以为数据库生成代码了。

   public  static void init() {

        Target l_target =   new Target();
        System.out.println("My directory is::"+l_target.getPackageName());
        l_target.setDirectory("src/main/java");
        l_target.setPackageName("com.my.paas.css.entity");
        Configuration configuration = new Configuration()
                .withJdbc(new Jdbc()
                        .withDriver("com.mysql.jdbc.Driver")
                        .withUrl("jdbc:mysql://localhost:3306/paas")
                        .withUser("root"))
                .withGenerator(new Generator()
                        .withDatabase(new Database()
                                .withName("org.jooq.meta.mysql.MySQLDatabase")
                                .withIncludes(".*")
                                .withExcludes("")
                                .withInputSchema("paas"))
                        .withTarget(l_target));

        try {
            GenerationTool.generate(configuration);
        } catch (Exception ex) {
            System.out.println();
            ex.printStackTrace();
        }
    }

1 个答案:

答案 0 :(得分:1)

一种可行的方法是使用一个org.jooq.impl.DSL的重载工厂方法,该方法接受一个javax.sql.DataSource来构造您的org.jooq.DSLContext

可能看起来像这样:

final HikariConfig config = new HikariConfig();
config.setMinimumIdle(...);
config.setMaximumPoolSize(...);
// ...etc - whatever other pool behavior you desire

final HikariDataSource dataSource = new HikariDataSource(config);

final DSLContext dslContext = DSL.using(dataSource, SQLDialect.MYSQL)