如何将JDBI添加到Spring Boot应用程序中?

问题描述 投票:0回答:1

我试图在没有Hibernate的情况下设置Spring Boot应用程序,而是使用JDBI。现在我使用maven作为我的包管理,但我不确定如何完成这项工作。在这里你可以看到pom.xml的一部分。我在gradle中找到了一些信息,但是有人能告诉我JBDI如何与maven包管理集成?同时有一个例子如何将它连接到SQLite数据库。

  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
      <exclusions>
        <exclusion>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-jetty</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.jayway.jsonpath</groupId>
      <artifactId>json-path</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.jdbi</groupId>
      <artifactId>jdbi</artifactId>
      <version>2.78</version>
    </dependency>
   </dependencies>
java spring spring-boot spring-data jdbi
1个回答
1
投票

你可以在这里看到一个可运行的代码示例和解释https://www.surasint.com/spring-boot-database-transaction-jdbi/

基本上,你需要pom.xml中spring database,jdbi和mysql连接器的这种依赖

    <!-- for db annotation, ex @Transactional -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <!-- mysql connector -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.10</version>
    </dependency>
    <!-- jdbi: db table mapper -->
    <dependency>
        <groupId>org.jdbi</groupId>
        <artifactId>jdbi</artifactId>
        <version>2.62</version>
    </dependency>
</dependencies>

然后你需要Spring的数据源。你可以这样做:

@Qualifier("dataSource")
@Autowired
private DataSource dataSource;

然后,您需要来自该数据源的连接。

Connection conn =  DataSourceUtils.getConnection(dataSource);

然后将连接器与JDBI挂钩。

Handle handle = DBI.open(conn);
© www.soinside.com 2019 - 2024. All rights reserved.