springboot配置druid连接数据的超时时间,查询超时时间,执行超时时间
时间: 2024-03-12 09:48:41 浏览: 42
在Spring Boot中,可以通过以下方式配置Druid连接池的超时时间:
1. 连接超时时间
连接超时时间指的是获取数据库连接的最长等待时间,可以通过设置 `spring.datasource.druid.connection-timeout` 属性来配置。例如:
```
spring.datasource.druid.connection-timeout=10000
```
上述配置表示连接超时时间为10秒。
2. 查询超时时间
查询超时时间指的是执行SQL语句的最长等待时间,可以通过设置 `spring.datasource.druid.query-timeout` 属性来配置。例如:
```
spring.datasource.druid.query-timeout=60000
```
上述配置表示查询超时时间为60秒。
3. 执行超时时间
执行超时时间指的是执行SQL语句的最长时间,可以通过设置 `spring.datasource.druid.transaction-query-timeout` 属性来配置。例如:
```
spring.datasource.druid.transaction-query-timeout=120
```
上述配置表示执行超时时间为120秒。
需要注意的是,以上配置的时间单位均为毫秒。
相关问题
druid连接池设置读超时时间
Druid连接池可以通过以下方式设置读超时时间:
1. 在配置文件中添加以下属性:
```
# 设置读取超时时间为5秒
spring.datasource.druid.validation-query-timeout=5000
```
2. 在代码中通过以下方式设置:
```
// 获取数据源
DruidDataSource dataSource = new DruidDataSource();
// 设置读取超时时间为5秒
dataSource.setValidationQueryTimeout(5000);
```
设置后,当连接池从数据库获取连接时,如果读取数据的时间超过了设置的超时时间,则会抛出异常。这可以帮助您及时发现读取数据过程中的问题,以及及时处理异常。
application.yml 配置mybatis sql连接超时时间
在 application.yml 文件中,可以通过以下方式配置 MyBatis 的 SQL 连接超时时间:
```
spring:
datasource:
url: jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false&maxReconnects=10
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
validation-query: SELECT 1 FROM DUAL
validation-interval: 30000
test-on-borrow: true
test-while-idle: true
time-between-eviction-runs-millis: 60000
min-evictable-idle-time-millis: 1800000
max-active: 100
max-idle: 30
max-wait: 5000
initial-size: 5
remove-abandoned: true
remove-abandoned-timeout: 180
log-abandoned: true
pool-prepared-statements: true
max-open-prepared-statements: 50
filters: stat,wall
connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
```
其中,最关键的配置项是 `max-wait`,它表示连接池中获取连接的最大等待时间,单位为毫秒。如果连接池已经没有可用连接,且等待时间超过了 `max-wait` 的值,就会抛出异常。
一般来说,建议将 `max-wait` 的值设置为 5000-10000 毫秒,即 5-10 秒钟。如果服务器的网络环境比较稳定,可以适当缩短等待时间,反之则应该增加等待时间来避免连接超时。