今天在复习Druid和c3p0时遇到了许多的,各种各样的问题,这些问题都是不够熟练的问题,多敲几遍就可以了.
遇到的问题一:
在初次写Druid和c3p0时导入jar包时要分好类,每一个的不同的我放在了不同的文件夹中,这样导入时,我就导入文件夹看着就很清晰,而且在你退出这个当前项目时,要重新导入jar包.
遇到的问题二:
就是在写Druid和c3p0时有时会把他们的配置文件放错地方,他们的工具类抽取时,有时会忘记开头咋写,后面的步骤感觉很简单,就是开头的数据库连接池对象有点分不清,在写了几次,对照后发现.
c3p0是默认加载c3p0-config.xml配置文件, new combopooledDataSource()小括号中可以写自定义加载配置信息,没有静态代码块.
Druid是加载properties文件,在静态代码块中加载配置文件给数据库连接对象dataSource 赋DruidDataSourceFactory.createDataSource(属性集);
其他的步骤都一样就很简单了.提供datasource的get方法,获取连接对象connection的方法,释放资源的方法.
遇到的问题三:
InvalidConnectionAttributeException
连接mysql数据库报的时区错误,因为我自己在写配置文件时没有看清楚大小写,在写
url = jdbc:mysql://localhost:3306/jdbcfuxi?serverTimezone=UTC&characterEncoding=utf-8时把Timezone写成了TimeZone,报了这个异常.在网上搜了一下,找到了错误的地方.
遇到的问题四:
NullPointerException(空指针异常)是java.lang.NullPointerException的简称,是Java语言中的一个异常类,位于java.lang包中,父类是java.lang.RuntimeException。该异常在源程序中可以不进行捕获和处理. 在解决以上问题时有看到这个异常(空指针异常),然后从头看,找到是加载配置文件时把属性集加载文件写在那个数据库连接池对象下了,然报这个异常.解决问题.