the documentationによると、デフォルトでは、SpringブートはTomcat JDBCを使用します。 spring-boot-starter-jdbcには、spring-boot-startter-data-jpaに含まれています。
- 私たちは、その性能と並行処理のためのデータソースをプールTomcatを好むので、それが利用可能な場合、我々は常にそれを選択してください。
- HikariCPが利用可能な場合は、それを使用します。
- TomcatプーリングデータソースもHikariCPも利用できない場合、Commons DBCPが使用可能な場合は使用しますが、本番環境では推奨しません。
- 最後に、Commons DBCP2が利用可能であれば、それを使用します。
これにより、たとえば、spring.datasource.tomcat.*
プロパティを使用しなければならないことを意味する:
また
spring.datasource.tomcat.max-active=1
spring.datasource.tomcat.validation-query=/* ping */ SELECT 1
spring.datasource.tomcat.test-on-borrow=true
spring.datasource.tomcat.initial-size=1
、あなたはDBCPを好むならば、あなたはspring.datasource.type
プロパティを定義することで、そうして完全修飾名を提供することができます接続プールの実装のこの場合maxActive
が存在しないので、the documentation of DBCPに従ってmaxTotal
を使用する必要があります。
正しいバージョンのDBCPをクラスパスに追加することを忘れないでください。あなたは1.1を追加している場合、あなたは2.xのを使用している場合(あなたが使用するように)、しかし、あなたはspring.datasource.dbcp2.*
プロパティを使用する必要がありますspring.datasource.dbcp.*
プロパティを使用することができます:あなたが使用しているプール
# Commons DBCP 1.x
spring.datasource.dbcp.max-total=1
spring.datasource.dbcp.validation-query=/* ping */ SELECT 1
spring.datasource.dbcp.test-on-borrow=true
spring.datasource.dbcp.initial-size=1
spring.datasource.type=org.apache.commons.dbcp.BasicDataSource # To override the default classpath lookup behaviour
# Commons DBCP 2.x
spring.datasource.dbcp2.max-total=1
spring.datasource.dbcp2.validation-query=/* ping */ SELECT 1
spring.datasource.dbcp2.test-on-borrow=true
spring.datasource.dbcp2.initial-size=1
spring.datasource.type=org.apache.commons.dbcp2.BasicDataSource # To override the default classpath lookup behaviour
。 –
私はデフォルトのプールを使用しています。それはtomcat-jdbcですか? –
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-sql.html#boot-features-connect-to-production-databaseに従ってTomcatにする必要があります。だから、あなたは 'spring.datasource.dbcp。*'の代わりに 'spring.datasource.tomcat。*'を使うべきだと思います。 – g00glen00b