聊聊如何获取PreparedStatement的参数

2023-09-06
阅读 12 分钟
627
PreparedStatement继承了Statement接口,它主要是多定义了一系列的set方法,但是没有定义get方法,只是定义了getParameterMetaData方法返回ParameterMetaData

聊聊hikari连接池的fixed pool design

2018-02-06
阅读 6 分钟
4.1k
hikari的作者比较倾向于fixed pool design的理念,即建议minimumIdle与maximumPoolSize设置成一样,当做固定连接大小的连接池。作者认为minimumIdle小于maximumPoolSize的话,在流量激增的时候需要额外的连接,此时在请求方法里头再去处理新建连接会造成性能损失,即会导致数据库一方面降低连接建立的速度,另一方面也会...

聊聊hikari连接池的idleTimeout及minimumIdle属性

2018-02-05
阅读 8 分钟
29k
默认是600000毫秒,即10分钟。如果idleTimeout+1秒>maxLifetime 且 maxLifetime>0,则会被重置为0;如果idleTimeout!=0且小于10秒,则会被重置为10秒。如果idleTimeout=0则表示空闲的连接在连接池中永远不被移除。只有当minimumIdle小于maximumPoolSize时,这个参数才生效,当空闲连接数超过minimumIdle,而且空闲...

[case5]聊聊hikari与tomcat jdbc pool的fail fast

2018-02-04
阅读 25 分钟
3.3k
从这点来看,中途数据库断开的话,hikari会不断获取数据库链接假设数据库一直没恢复,那么所以请求数据库操作的业务线程将都阻塞connectionTimeout的时间,这个会占用工作线程 hikari只有testOnBorrow功能,是直接一个while循环,在timeout时间内不断borrow连接,validate连接,validate成功才返回或者超时抛出SQLTransi...

聊聊hikari连接池的maxLifetime属性及evict操作

2018-02-03
阅读 6 分钟
21.7k
用来设置一个connection在连接池中的存活时间,默认是1800000,即30分钟。如果设置为0,表示存活时间无限大。如果不等于0且小于30秒则会被重置回30分钟。

聊聊hikari连接池的leakDetectionThreshold

2018-02-02
阅读 16 分钟
12.9k
用来设置连接被占用的超时时间,单位为毫秒,默认为0,表示禁用连接泄露检测。如果大于0且不是单元测试,则进一步判断:(leakDetectionThreshold < SECONDS.toMillis(2) or (leakDetectionThreshold > maxLifetime && maxLifetime > 0),会被重置为0 . 即如果要生效则必须>0,同时满足:不能小于2秒...

聊聊hikari连接池的validationTimeout

2018-02-01
阅读 7 分钟
18.5k
默认是5秒HikariCP/2.7.6/HikariCP-2.7.6-sources.jar!/com/zaxxer/hikari/pool/PoolBase.java

聊聊hikari连接池的isAllowPoolSuspension

2018-01-31
阅读 9 分钟
4k
当没有设置的allow-pool-suspension=true时候,抛出java.lang.IllegalStateException: HikariPool-1 - is not suspendable

springboot2的hikari数据库连接池默认配置

2018-01-30
阅读 16 分钟
40.2k
Spring-Boot-2.0.0-M1版本将默认的数据库连接池从tomcat jdbc pool改为了hikari,这里主要研究下hikari的默认配置

聊聊spring boot tomcat jdbc pool的属性绑定

2018-01-29
阅读 20 分钟
7.3k
使用如上配置,最后发现initial-size,max-active,max-idle,min-idle等配置均无效,生成的tomcat jdbc datasource还是使用的默认的配置

[case4]聊聊jdbc的大数据量读写相关异常的防御措施

2018-01-28
阅读 4 分钟
4.1k
对于普通的功能,分页操作是必须的,也是解决这个问题最简单的方法,在相关功能实现的时候,要对生产的数据量进行提前预估,确定好相应的分页数据量。

聊聊jpa的batch操作的实现

2018-01-28
阅读 31 分钟
8.1k
hibernate-core-5.0.12.Final-sources.jar!/org/hibernate/internal/SessionImpl.java

聊聊jdbc的batch操作

2018-01-28
阅读 4 分钟
8.1k
statement的batch操作,可以批量进行insert或update操作,提升操作性能,特别是在大数据量的insert或update的时候。

聊聊tomcat jdbc pool的默认参数及poolSweeper

2018-01-27
阅读 17 分钟
6.5k
序 本文主要研究一下tomcat jdbc pool的默认参数及poolSweeper tomcat jdbc pool 参数默认值 initialSize = 10(默认值) maxActive=100(默认值) maxIdle=100(默认值) minIdle=10(默认值) maxWait=30000(默认值) validationQueryTimeout=-1(默认值) testOnBorrow=false(默认值) testOnReturn=false(默认值) testWhileIdel=...

聊聊pg jdbc statement的maxRows参数

2018-01-26
阅读 9 分钟
3.5k
postgresql-9.4.1212.jre7-sources.jar!/org/postgresql/core/v3/QueryExecutorImpl.java

聊聊mysql jdbc的queryTimeout及next方法

2018-01-25
阅读 25 分钟
5.1k
mysql-connector-java-5.1.43-sources.jar!/com/mysql/jdbc/PreparedStatement.java

聊聊pg jdbc的queryTimeout及next方法

2018-01-24
阅读 12 分钟
4.6k
ostgresql-9.4.1212.jre7-sources.jar!/org/postgresql/jdbc/PgStatement.java

聊聊jdbc statement的fetchSize

2018-01-23
阅读 10 分钟
6.3k
这里以postgres jdbc driver为例,主要是因为postgres的jdbc driver有公开源码,而且命名比较规范。之前看oracle jdbc,由于没有源码,反编译出来一大堆var1,var2等的变量命名,非常晦涩。默认情况下pgjdbc driver会一次性拉取所有结果集,也就是在executeQuery的时候。对于大数据量的查询来说,非常容易造成OOM。这种...

聊聊jdbc socketTimeout的设置

2018-01-22
阅读 8 分钟
32.1k
序 本文主要介绍下jdbc的socket timeout的设置 jdbc timeout类别 主要有如下几个类别 transaction timeout 设置的是一个事务的执行时间,里头可能包含多个statement statement timeout(也相当于result set fetch timeout) 设置的是一个statement的执行超时时间,即driver等待statement执行完成,接收到数据的超时时间(注...

聊聊querydsl的生成类

2017-11-21
阅读 3 分钟
7.6k
不过由于是生成在target里头的,整体感觉对IDE不是太友好,另外这种生成代码的方式,有点鸡肋,每当修改字段或者增删字段时,就得重新生成一次,非常费劲。如果要生成,还是基于字节码动态生成的靠谱一点,至少方便一些。

聊聊spring jdbc的RowMapper

2017-11-20
阅读 13 分钟
6.1k
spring-jdbc-4.3.10.RELEASE-sources.jar!/org/springframework/jdbc/core/RowMapper.java

springboot访问tomcat的SlowQueryReport

2017-07-06
阅读 3 分钟
3k
tomcat jdbc提供了SlowQueryReport这种的interceptor,可以用来记录超过阈值的慢查询sql,除了SlowQueryReportJmx提供jmx访问外,普通web如何访问相关统计信息呢?

记一个pg连接数过多的异常

2017-06-22
阅读 6 分钟
4.7k
序 java中使用数据库连接池,如果在部署的时候,操作不慎,可能出现典型的连接池爆满的问题。 异常 {代码...} 救急操作 查看连接 {代码...} 关闭连接 {代码...} doc org.postgresql.util.PSQLException: FATAL: sorry, too many clients already How to drop all connections to a specific database without stopping t...

tomcat的jdbc连接池PoolExhaustedException

2017-06-07
阅读 1 分钟
11.8k
异常 {代码...} 修改配置 {代码...} doc Working with SQL databases 想获取最新内容,请关注微信公众号