spring mysql 连接池配置_SpringBoot数据库连接池常用配置

关注公众号:程序猿王国         持续更新,每日分享

412547ddef8ff2e3e7143b63a9375e06.png

在配置文件中添加配置如下(我使用的是多数据源):

spring.datasource.primary.url=jdbc\:mysql\://localhost\:3306/test?useUnicode\=true&characterEncoding\=utf-8

spring.datasource.primary.username=test

spring.datasource.primary.password=123456

spring.datasource.primary.driver-class-name=com.mysql.jdbc.Driver

#验证连接的有效性

spring.datasource.primary.test-while-idle=true

#获取连接时候验证,会影响性能

spring.datasource.primary.test-on-borrow=false

#在连接归还到连接池时是否测试该连接

spring.datasource.primary.test-on-return=false

spring.datasource.primary.validation-query=SELECT 1 FROM DUAL

#空闲连接回收的时间间隔,与test-while-idle一起使用,设置5分钟

spring.datasource.primary.time-between-eviction-runs-millis=300000

#连接池空闲连接的有效时间 ,设置30分钟

spring.datasource.primary.min-evictable-idle-time-millis=1800000

spring.datasource.primary.initial-size=5

#指定连接池中最大的活跃连接数.

spring.datasource.primary.max-active=50

#指定连接池等待连接返回的最大等待时间,毫秒单位.

spring.datasource.primary.max-wait=60000

#指定必须保持连接的最小值

spring.datasource.primary.min-idle=5

spring.datasource.secondary.url=jdbc\:mysql\://localhost\:3306/test2?useUnicode\=true&characterEncoding\=utf-8

spring.datasource.secondary.username=test

spring.datasource.secondary.password=123456

spring.datasource.secondary.driver-class-name=com.mysql.jdbc.Driver

#验证连接的有效性

spring.datasource.secondary.test-while-idle=true

#获取连接时候验证,会影响性能

spring.datasource.secondary.test-on-borrow=false

#在连接归还到连接池时是否测试该连接

spring.datasource.secondary.test-on-return=false

spring.datasource.secondary.validation-query=SELECT 1 FROM DUAL

#空闲连接回收的时间间隔,与test-while-idle一起使用,设置5分钟

spring.datasource.secondary.time-between-eviction-runs-millis=300000

#连接池空闲连接的有效时间 ,设置30分钟

spring.datasource.secondary.min-evictable-idle-time-millis=1800000

spring.datasource.secondary.initial-size=5

#指定连接池中最大的活跃连接数.

spring.datasource.secondary.max-active=50

#指定连接池等待连接返回的最大等待时间,毫秒单位.

spring.datasource.secondary.max-wait=60000

#指定必须保持连接的最小值

spring.datasource.secondary.min-idle=5

datasource

spring.dao.exceptiontranslation.enabled是否开启PersistenceExceptionTranslationPostProcessor,默认为true

spring.datasource.abandon-when-percentage-full设定超时被废弃的连接占到多少比例时要被关闭或上报

spring.datasource.allow-pool-suspension使用Hikari pool时,是否允许连接池暂停,默认为: false

spring.datasource.alternate-username-allowed是否允许替代的用户名.

spring.datasource.auto-commit指定updates是否自动提交.

spring.datasource.catalog指定默认的catalog.

spring.datasource.commit-on-return设置当连接被归还时,是否要提交所有还未完成的事务

spring.datasource.connection-init-sql指定连接被创建,再被添加到连接池之前执行的sql.

spring.datasource.connection-init-sqls使用DBCP connection pool时,指定初始化时要执行的sql

spring.datasource.connection-properties.[key]在使用DBCP connection pool时指定要配置的属性

spring.datasource.connection-test-query指定校验连接合法性执行的sql语句

spring.datasource.connection-timeout指定连接的超时时间,毫秒单位.

spring.datasource.continue-on-error在初始化数据库时,遇到错误是否继续,默认false

spring.datasource.data指定Data (DML)脚本

spring.datasource.data-source-class-name指定数据源的全限定名.

spring.datasource.data-source-jndi指定jndi的地址

spring.datasource.data-source-properties.[key]使用Hikari connection pool时,指定要设置的属性

spring.datasource.db-properties使用Tomcat connection pool,指定要设置的属性

spring.datasource.default-auto-commit是否自动提交.

spring.datasource.default-catalog指定连接默认的catalog.

spring.datasource.default-read-only是否设置默认连接只读.

spring.datasource.default-transaction-isolation指定连接的事务的默认隔离级别.

spring.datasource.driver-class-name指定driver的类名,默认从jdbc url中自动探测.

spring.datasource.fair-queue是否采用FIFO返回连接.

spring.datasource.health-check-properties.[key]使用Hikari connection pool时,在心跳检查时传递的属性

spring.datasource.idle-timeout指定连接多久没被使用时,被设置为空闲,默认为10ms

spring.datasource.ignore-exception-on-pre-load当初始化连接池时,是否忽略异常.

spring.datasource.init-sql当连接创建时,执行的sql

spring.datasource.initial-size指定启动连接池时,初始建立的连接数量

spring.datasource.initialization-fail-fast当创建连接池时,没法创建指定最小连接数量是否抛异常

spring.datasource.initialize指定初始化数据源,是否用data.sql来初始化,默认: true

spring.datasource.isolate-internal-queries指定内部查询是否要被隔离,默认为false

spring.datasource.jdbc-interceptors使用Tomcat connection pool时,指定jdbc拦截器,分号分隔

spring.datasource.jdbc-url指定JDBC URL.

spring.datasource.jmx-enabled是否开启JMX,默认为: false

spring.datasource.jndi-name指定jndi的名称.

spring.datasource.leak-detection-threshold使用Hikari connection pool时,多少毫秒检测一次连接泄露.

spring.datasource.log-abandoned使用DBCP connection pool,是否追踪废弃statement或连接,默认为: false

spring.datasource.log-validation-errors当使用Tomcat connection pool是否打印校验错误.

spring.datasource.login-timeout指定连接数据库的超时时间.

spring.datasource.max-active指定连接池中最大的活跃连接数.

spring.datasource.max-age指定连接池中连接的最大年龄

spring.datasource.max-idle指定连接池最大的空闲连接数量.

spring.datasource.max-lifetime指定连接池中连接的最大生存时间,毫秒单位.

spring.datasource.max-open-prepared-statements指定最大的打开的prepared statements数量.

spring.datasource.max-wait指定连接池等待连接返回的最大等待时间,毫秒单位.

spring.datasource.maximum-pool-size指定连接池最大的连接数,包括使用中的和空闲的连接.

spring.datasource.min-evictable-idle-time-millis指定一个空闲连接最少空闲多久后可被清除.

spring.datasource.min-idle指定必须保持连接的最小值(For DBCP and Tomcat connection pools)

spring.datasource.minimum-idle指定连接维护的最小空闲连接数,当使用HikariCP时指定.

spring.datasource.name指定数据源名.

spring.datasource.num-tests-per-eviction-run指定运行每个idle object evictor线程时的对象数量

spring.datasource.password指定数据库密码.

spring.datasource.platform指定schema要使用的Platform(schema-${platform}.sql),默认为: all

spring.datasource.pool-name指定连接池名字.

spring.datasource.pool-prepared-statements指定是否池化statements.

spring.datasource.propagate-interrupt-state在等待连接时,如果线程被中断,是否传播中断状态.

spring.datasource.read-only当使用Hikari connection pool时,是否标记数据源只读

spring.datasource.register-mbeans指定Hikari connection pool是否注册JMX MBeans.

spring.datasource.remove-abandoned指定当连接超过废弃超时时间时,是否立刻删除该连接.

spring.datasource.remove-abandoned-timeout指定连接应该被废弃的时间.

spring.datasource.rollback-on-return在归还连接时,是否回滚等待中的事务.

spring.datasource.schema指定Schema (DDL)脚本.

spring.datasource.separator指定初始化脚本的语句分隔符,默认: ;

spring.datasource.sql-script-encoding指定SQL scripts编码.

spring.datasource.suspect-timeout指定打印废弃连接前的超时时间.

spring.datasource.test-on-borrow当从连接池借用连接时,是否测试该连接.

spring.datasource.test-on-connect创建时,是否测试连接

spring.datasource.test-on-return在连接归还到连接池时是否测试该连接.

spring.datasource.test-while-idle当连接空闲时,是否执行连接测试.

spring.datasource.time-between-eviction-runs-millis指定空闲连接检查、废弃连接清理、空闲连接池大小调整之间的操作时间间隔

spring.datasource.transaction-isolation指定事务隔离级别,使用Hikari connection pool时指定

spring.datasource.url指定JDBC URL.

spring.datasource.use-disposable-connection-facade是否对连接进行包装,防止连接关闭之后被使用.

spring.datasource.use-equals比较方法名时是否使用String.equals()替换==.

spring.datasource.use-lock是否对连接操作加锁

spring.datasource.username指定数据库名.

spring.datasource.validation-interval指定多少ms执行一次连接校验.

spring.datasource.validation-query指定获取连接时连接校验的sql查询语句.

spring.datasource.validation-query-timeout指定连接校验查询的超时时间.

spring.datasource.validation-timeout设定连接校验的超时时间,当使用Hikari connection pool时指定

spring.datasource.validator-class-name用来测试查询的validator全限定名.

spring.datasource.xa.data-source-class-name指定数据源的全限定名.

spring.datasource.xa.properties指定传递给XA data source的属性

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/556878.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

交换机到底是啥?

1、交换机 交换机个人资料: 1.证件照 注:copy 百度百科 我的博客/交换机到底是啥? 这东西乍一看有点像月光宝盒,是不是。 2.个人简介 交换机(Switch)意为“开关”是一种用于电(光&#xff0…

unity3d 动态合批设置_Unity3D SkinnedMeshRenderer合批优化

最近做了性能优化相关的工作,其中一些是关于战斗模块的渲染的。主要是对场景中使用的基于SkinnedMeshRenderer的网格进行了一些合批优化(降DC),记录如下。项目使用的Unity版本为5.6.4p1。游戏中的战斗模块是这样的:战斗逻辑由服务器承担&…

java——Final修饰成员变量的注意事项

一.Final 修饰成员变量的注意事项 final修饰成员变量,该成员变量必须在创建对象之前进行赋值,否则编译失败final修饰成员变量,固定的不是成员变量拥有的默认值,如果固定的是默认值,那么将导致被final修饰的…

php 编写mysql_php编写数据写入mysql问题

我刚写好的:前台是htm界面填写数据留言板...我刚写好的:前台是 htm界面 填写数据留言板你的姓名:你的性别:男 女你的email:你的留言内容:后台是:if(isset($_POST)) // 只有 $_POST 变量存在&…

java 代码 点到线段的最短距离

// 点到直线的最短距离的判断 点(x0,y0) 到由两点组成的线段(x1,y1) ,( x2,y2 )private double pointToLine(int x1, int y1, int x2, int y2, int x0,int y0) {double space 0;double a, b, c;a lineSpace(x1, y1, x2, y2);// …

isNotBlank()和isNotEmpty()的区别——java中,StringUtils类中的一些常用方法

java中,StringUtils类中的一些常用方法 boolean isBlank(String str) //判断某字符串是否为空或长度为0或由空白符(whitespace)构成 StringUtils.isBlank(null) true StringUtils.isBlank("") true StringUtils.isBlank(" ") true StringUt…

java类的加载顺序_java类加载先后顺序

这里讲的不是类加载机制,是类的加载先后顺序。话不多说了,先设定以下场景:package com.jingdong;public class A {public static void main(String[] args){System.out.println(Ib.b);B bnew B();b.ibTest();}}public class B implements Ib{private D d;private C …

MyBatis:模糊查询的4种实现方式

1、根据姓名模糊查询员工信息 1.1、方式一 步骤一:编写配置文件 步骤二:测试 步骤三:分析 此种方式需要在调用处手动的去添加“%”通配符。 1.2、方式二 说明: 使用方式一可以实现模糊查询,但是有一点不方便的地…

java 阻塞 socket_java socket非阻塞I/O

1 非阻塞(Nonblocking)体系结构在这一部分,我将从理论的角度来解释非阻塞体系的结构及其工作原理。这部“喜剧”(当然,如果你喜欢的话也可以称做戏剧)的“人物”如下:●服务器端:接收请求的应用程序。●客户端:向…

java panel frame_Java 版 (精华区)--Frame和Panel的区别【转载】

初学Java的时候一直弄不清Frame和Panel的区别,都是在上面装组件,也没看出什么所以然,一直稀里糊涂地用。最近看来一下Java类库中几个主要类的源文件,才明白了一点所以然。写下了此文,希望能给大家一点帮助。让我们先看…

js解析java对象数组_js接收并转化Java中的数组对象的方法

在做项目时,要向ocx控件下发命令,就要在js中得到java中的对象,然后拼成一种格式,下发下去。。。当对象是一个时比较简单,但如果对象是一个数组时,就略显麻烦了。开始我以为有简单的方式,可以直接…

预处理prepareStatement是怎么防止sql注入漏洞的?

序,目前在对数据库进行操作之前,使用prepareStatement预编译,然后再根据通配符进行数据填值,是比较常见的做法,好处是提高执行效率,而且保证排除SQL注入漏洞。 一、prepareStatement的预编译和防止SQL注入…

java mod函数的使用方法_java 数学计算的具体使用

java.lang.Math 库提供了常用的数学计算工具常量final double E 2.7182818284590452354; // 自然对数底数final double PI 3.14159265358979323846; // 圆周率final double DEGREES_TO_RADIANS 0.017453292519943295; // 角度转弧度final double RADIANS_TO_DEGREES 57.295…

mybatis中的#{}和${}区别,和使用场景

mybatis中的#{}和${}区别 1.#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by “111”, 如果传入的值是id,则解析成的sql为order by “i…

java 图片深度_将深度图像与RGB图像对齐

我正在尝试使用Kinect使用Python和libfreenect捕获的图像生成点 Cloud ,但我无法将深度数据与Kinect拍摄的RGB数据对齐 .cx_d 3.3930780975300314e02cy_d 2.4273913761751615e02fx_d 5.9421434211923247e02fy_d 5.9104053696870778e02fx_rgb 5.292150809829329…

sql模糊查询

1,% 表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE ‘%三%’ 将会把u_name为“张三”,“张猫三”、…

MyBatis 解决模糊查询包含特殊字符

第一块:MyBatis 实现模糊查询方式 1.1 sql中字符串拼接 SELECT * FROM 表名 WHERE 字段名 LIKE CONCAT(CONCAT(%, #{参数}), %);1 2. 使用 ${…} 代替 #{…} SELECT * FROM 表名 WHERE 字段名 LIKE %${参数}%; 注意:($不能防止sql注入, #{}—> 可以防止sql注入…

java的debug模式_java第六章:debug模式介绍及大量实例练习

1.Debug模式1.1什么是Debug模式【理解】是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序。1.2Debug模式操作流程【应用】如何加断点选择要设置断点的代码行,在行号的区域后面单击鼠标左键即…

注解RequestMapping中的URI路径最前面到底需不需要加斜线?

注解RequestMapping中的URI路径最前面到底需不需要加斜线? 您有没有这样的困惑:在协同开发过程中,使用RequestMapping,或者是GetMapping,或者是PostMapping这类注解时,有的程序员加了斜线,有的程序员没有…

java ajax jquery分页插件_jquery ajax分页插件的简单实现

说到基于jQuery的ajax分页插件,那我们就先看看主要的代码结构:1、首先定义一个pager对象:var sjPager window.sjPager {opts: {//默认属性pageSize: 10,preText: "pre",nextText: "next",firstText: "First"…