Myslq连接(JDBC)url属性的参数的设置

概要

在Java Web项目中连接数据库是最常用到的,其中最熟悉的就是Mysql连接(及连接池)各属性的配置,其中连接的url属性的参数种类繁多,今天给大家介绍主要url的参数说明,以druid连接池配置信息举例如:

<property name="jdbcDriver" value="com.mysql.jdbc.Driver" />
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activiti" />
<property name="jdbcUsername" value="root" />
<property name="jdbcPassword" value="123456" />

参数说明

  • user                        数据库用户名(用于连接数据库)
  • passWord                用户密码(用于连接数据库)
  • useUnicode              是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true 
  • characterEncoding         当useUnicode设置为true,给定编码,常用utf8,默认是:autodetect
  • autoReconnect                当数据库连接异常中断时,是否自动重新连接?
  • serverTimezone            连接数据库的时区信息
  • autoReconnectForPools       是否使用针对数据库连接池的重连策略
  • maxReconnects                      autoReconnect设置为true时,重试连接的次数
  • createDatabaseIfNotExist=true    连接数据库时如果没有库名自动创建
  • initialTimeout                       autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒 
  • connectTimeout                  和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,
  • socketTimeout                    socket操作(读写)超时,单位:毫秒。 0表示永不超时
  • failOverReadOnly                   自动重连成功后,连接是否设置为只读?
  • zeroDateTimeBehavior             "exception", "round" and "convertToNull",默认exception
  • maxRows                                     返回的最大行数,默认-1,不限制
  • autoDeserialize                         driver自动发现,并行化存储blob字段
  • allowMultiQueries               允许一个statement执行多个用;分割的sql,默认false
  • useSSL                              连接MySQL 5.5.45+, 5.6.26+ or 5.7.6+默认为true,之前低版本为false

如果你已经升级好了mysql-connector,其中的characterEncoding=utf8可以被自动被识别为utf8mb4(当然也兼容原来的utf8),而autoReconnect配置强烈建议配上。

对应中文环境,通常mysql连接URL可以设置为: 

jdbc:mysql://localhost:3306/db?useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false 

在使用数据库连接池的情况下,最好设置如下两个参数: 

autoReconnect=true&failOverReadOnly=false 

注意:在xml配置文件中,url中的&符号需要转义成&。比如直接配置再数据源的配置文件中写属性值的话,需要改成如下示例:

jdbc:mysql://localhost:3306/db?useUnicode=true&amp;characterEncoding=utf8&amp;autoReconnect=true

因此推荐大家还是把数据库连接信息写到配置文件中(jdbc.properties)中,就可以安全写“&”作为连接参数了。

(完)

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值