Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.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
Spring boot Spring boot JPA应用程序不使用HikariCP配置_Spring Boot_Connection Pooling_Hikaricp_Tomcat Jdbc - Fatal编程技术网

Spring boot Spring boot JPA应用程序不使用HikariCP配置

Spring boot Spring boot JPA应用程序不使用HikariCP配置,spring-boot,connection-pooling,hikaricp,tomcat-jdbc,Spring Boot,Connection Pooling,Hikaricp,Tomcat Jdbc,我们已经将spring-boot(v1.5.1)-jpa应用程序配置为指向HikariCP,但由于某些奇怪的原因,该应用程序仍然指向tomcat jdbc池,这是spring-boot而不是Hikari-CP使用的默认值。 我已经提到了下面使用的配置 更新 现在在HikariCP尝试加载时进行更改之后,我们将获得SQLNotSupportedFeature异常。 请注意,我们正在使用Springboot JPA Hibernate与hikari的组合 感谢您的帮助 Gradle // h

我们已经将spring-boot(v1.5.1)-jpa应用程序配置为指向HikariCP,但由于某些奇怪的原因,该应用程序仍然指向tomcat jdbc池,这是spring-boot而不是Hikari-CP使用的默认值。 我已经提到了下面使用的配置

更新
现在在HikariCP尝试加载时进行更改之后,我们将获得SQLNotSupportedFeature异常。 请注意,我们正在使用Springboot JPA Hibernate与hikari的组合

感谢您的帮助

Gradle

    // https://mvnrepository.com/artifact/com.zaxxer/HikariCP
    compile group: 'com.zaxxer', name: 'HikariCP', version: '2.3.2'

    // Exclusions
    compile('org.springframework.boot:spring-boot-starter-web'){
    exclude module: "spring-boot-starter-tomcat"
    }
    compile('org.springframework.boot:spring-boot-starter-data-jpa') {
    exclude module: "spring-boot-starter-tomcat"
    }
    compile("org.springframework.boot:spring-boot-starter-jdbc") {
    exclude module: "spring-boot-starter-tomcat"
    }
    //spring integration
    compile("org.springframework.boot:spring-boot-starter-integration"){
    exclude module: "spring-boot-starter-tomcat"
    }  
应用程序属性

hibernate.show.sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
spring.datasource.hikari.maximum-pool-size=50
spring.datasource.hikari.idle-timeout=1000
spring.datasource.hikari.pool-name=pooool
spring.datasource.type=com.zaxxer.hikari.HikariDataSource

spring.datasource.url=jdbc:oracle:thin:@<hostname>:1521/<instance>
spring.datasource.username=<user>
spring.datasource.password=<password>
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
请提供帮助,因为这会阻止我们的应用程序,并且令人沮丧。
提前感谢。

您应该
新建HikariDataSource(…)
而不是bean中的
新建数据源()

configurations {
     compile.exclude module: "tomcat-jdbc"
}

dependencies {
     compile("org.springframework.boot:spring-boot-starter-jdbc")
     compile group: 'com.zaxxer', name: 'HikariCP', version: '2.6.3'
}

上面将排除tomcat jdbc,并将使用hikari创建连接池。希望这会有所帮助。

我假设您的依赖项中有Hikari CP,对吗?确保将TomcatJDBC从POM中排除。对不起,我忘了早点提。是的,我们确实添加了排除项,但没有用。在将您的项目与我自己的项目进行比较后,我知道该项目正在与HikaryCP合作。唯一不同的是,我看到你没有一个司机在pom。也许那件事没人接。尝试添加此依赖项编译组:'oracle',名称:'ojdbc6',版本:'11.2.0.3',谢谢您的尝试并让您知道。我们也怀疑这一点,因为当hikari试图加载它自己时,我们得到了SqlNotSupportertedFeature异常。您的Hibernate版本是什么?谢谢您的回复。然而,如果我这样做,它将不是“硬编码”。我想保持我的代码的灵活性。比如说明天,如果我们想从Hikari切换到Tomcat或其他池,我希望只更改配置文件而不涉及代码。我们还将失去spring提供的{spring.datasource.type}的优势。根据文档,仅提及类型和配置属性就足够了。这是所有人都面临的错误吗?所以最好在问题中添加您的需求。我们尝试了你的建议,但是我们得到了SQLFeatureNotSupportedException我们尝试了oracle驱动程序名称:“ojdbc6”,版本:“11.2.0.3”,ojdbc7等,但仍然得到相同的错误
configurations {
     compile.exclude module: "tomcat-jdbc"
}

dependencies {
     compile("org.springframework.boot:spring-boot-starter-jdbc")
     compile group: 'com.zaxxer', name: 'HikariCP', version: '2.6.3'
}