Java Spring引导默认连接池tomcat属性不工作
我们使用的是spring boot1.5.9.RELEASE。我们在maven依赖项中有Java Spring引导默认连接池tomcat属性不工作,java,spring-boot,tomcat,jdbc,jdbctemplate,Java,Spring Boot,Tomcat,Jdbc,Jdbctemplate,我们使用的是spring boot1.5.9.RELEASE。我们在maven依赖项中有SpringBootStarter数据jpa和mysql连接器java,可以连接到mysql数据库。我们尚未配置任何连接池。根据,因为我们使用的是springbootstarter数据,所以使用jpatomcat连接池作为默认连接池。但是,当我们尝试将连接池属性设置为spring.datasource.tomcat.*时,它不起作用。但是当使用spring.datasource.*格式时,同样的情况也会发生
SpringBootStarter数据jpa
和mysql连接器java
,可以连接到mysql数据库。我们尚未配置任何连接池。根据,因为我们使用的是springbootstarter数据,所以使用jpa
tomcat连接池作为默认连接池。但是,当我们尝试将连接池属性设置为spring.datasource.tomcat.*
时,它不起作用。但是当使用spring.datasource.*
格式时,同样的情况也会发生
i、 espring.datasource.max active=50
正在工作,而asspring.datasource.tomcat.max active=50
不工作。我通过在主类中打印Datasource确认了这一点,我得到的输出是org.apache.tomcat.jdbc.pool.Datasource@{key1=value1;key2=value2;…}
为什么会这样?是因为我们使用的是mysql连接器java
它没有读取tomcat连接池属性吗?如果是这样的话,那么当我打印数据源时,我是如何得到org.apache.tomcat.jdbc.pool的。DataSource@a1f72f5作为具有配置值的数据源?还是我从文档中漏掉了什么?或者JPA工作不正常
pom.xml:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
<relativePath />
</parent>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
</dependencies>
应用程序属性
spring.datasource.url=jdbc:mysql://1.2.3.4/dbname?useSSL=false
spring.datasource.username=username
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#Working
spring.datasource.max-active=30
spring.datasource.max-idle=20
spring.datasource.min-idle=10
#Not Working
spring.datasource.tomcat.max-active=30
spring.datasource.tomcat.max-idle=20
spring.datasource.tomcat.min-idle=10
注意:我们自动连接jdbctemplate,并在DAO中使用它。第一次:spring boot 1.5.x下线已经发布。第二:请发布一个MCVE,包括您的配置类和application.yaml.application.properties。希望有帮助。还添加了一个注释。尝试添加这个
spring.datasource.type=org.apache.tomcat.jdbc.pool.datasource
。即使tomcat池可用,您也可以使用。无更改。它已经在使用tomcat池。如注释中所述,打印datasource print的org.apache.tomcat.jdbc.pool.datasource
对象。@LuisMuñoz这是错误的,URL、用户名和密码等主要属性应通过spring.datasource.
配置。所有其他与供应商相关的配置都应通过spring.datasource.tomcat.*
进行配置。您可以验证in.1st:spring boot 1.5.x下线是否已宣布。第二:请发布一个MCVE,包括您的配置类和application.yaml.application.properties。希望有帮助。还添加了一个注释。尝试添加这个spring.datasource.type=org.apache.tomcat.jdbc.pool.datasource
。即使tomcat池可用,您也可以使用。无更改。它已经在使用tomcat池。如注释中所述,打印datasource print的org.apache.tomcat.jdbc.pool.datasource
对象。@LuisMuñoz这是错误的,URL、用户名和密码等主要属性应通过spring.datasource.
配置。所有其他与供应商相关的配置都应通过spring.datasource.tomcat.*
进行配置。您可以在中验证这一点。
spring.datasource.url=jdbc:mysql://1.2.3.4/dbname?useSSL=false
spring.datasource.username=username
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#Working
spring.datasource.max-active=30
spring.datasource.max-idle=20
spring.datasource.min-idle=10
#Not Working
spring.datasource.tomcat.max-active=30
spring.datasource.tomcat.max-idle=20
spring.datasource.tomcat.min-idle=10