Druid基本使用中遇到的bug及操作

在跟着教程练习Druid基本使用的过程中遇到如下问题:

代码:

package cn.itcast.datasource.druid;

import com.alibaba.druid.pool.DruidDataSourceFactory;

import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties;

public class DruidDemo {
    public static void main(String[] args) throws Exception {
        //导入jar包
        //定义配置文件
        //加载配置文件
        Properties pro=new Properties();
        InputStream is = DruidDemo.class.getClassLoader().getResourceAsStream("druid.properties");
        pro.load(is);
        //获取连接池对象
        DataSource ds = DruidDataSourceFactory.createDataSource(pro);
        //获取连接
        Connection conn = ds.getConnection();
        System.out.println(conn);
    }
}

问题1:
错误信息:Unknown initial character set index ‘255’ received from server. Initial client character set can be forced via the ‘characterEncoding’ property.
原因:字符集设置出现问题
解决方法:在配置文件的url后加 ?useUnicode=true&characterEncoding=utf8 即可
参考:https://blog.csdn.net/txwtech/article/details/80787886

问题2:
错误信息:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
原因:未导入数据库驱动jar包
解决方法:由于一时找不到免费的驱动jar包,也打不开mysql官网,就复制了综合案例的jar包mysql-connector-java-5.1.18-bin.jar到libs目录下

问题3:
错误信息:Unexpected exception encountered during query.
解决方法:更换最新mysql-connector-java-5.1.48jar
参考:https://blog.csdn.net/qq_43611486/article/details/98471966

问题4:
错误信息:java.lang.ClassNotFoundException: “com.mysql.cj.jdbc.Driver” at java.net.URLClassLoader.findClass
解决方法:右键驱动jar包 Add As Library

问题5:
错误信息:could not create connection to database server.] with root cause
原因:mysql版本与jar包版本不同
解决方法:MySQL 8.0 以上版本驱动包版本 mysql-connector-java-8.0.16.jar。;com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver。
参考:https://www.runoob.com/java/java-mysql-connect.html内含数据库驱动jar包的下载链接,谢谢菜鸟教程爸爸!

问题6:
错误信息:The server time zone value ‘�й���׼ʱ��’ is unrecognized or represents more than one time zo错误
原因:mysql识别时区出现错误,这是因为访问的url中没有指定时区为UTC
解决方法:在配置文件的url后加 &serverTimezone=UTC

到此程序可以运行,打印出了连接的对象,但是仍然报错:

二月 01, 2020 1:54:29 上午 com.alibaba.druid.pool.DruidDataSource error
严重: testWhileIdle is true, validationQuery not set
二月 01, 2020 1:54:30 上午 com.alibaba.druid.pool.DruidDataSource info
信息: {dataSource-1} inited
com.mysql.cj.jdbc.ConnectionImpl@3f200884

问题7:
错误信息:testWhileIdle is true, validationQuery not set
参考:https://www.cnblogs.com/leanfish/p/9593636.html

用到的快捷键:
1.添加异常:Alt+Enter
2.提取变量:Ctrl+Alt+V
3.psvm 主方法
4.sout 打印

日期:2020.2.1 2:00

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值