数据库连接池配置错误

Loading class com.mysql.jdbc.Driver'. This is deprecated. The new driver class iscom.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

在使用IDEA配置数据库连接池的时候,出现这个问题,导致数据库连接不上。

最初的数据库连接池配置如下:

 <context:component-scan base-package="Spring5Jdbc"></context:component-scan>
    <!--    数据库连接池-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
        <property name="url" value="jdbc:mysql://localhost:3306/test"/>
        <property name="username" value="root"/>
        <property name="password" value="root"/>
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    </bean>

后来出现这个问题:

在这里插入图片描述

然后修改:

 <property name="url" value="jdbc:mysql://localhost:3306/test?serverTimezone=UTC&amp;useSSL=false"/>

这部分就是修改serverTimezone=UTC为时区问题,后面的useSSL=false就是不遵循SSL协议连接,我的电脑不能支持安全连接,所以只能跳过这个连接。

数据库8.0版本的在加载驱动的时候,需要添加如下:

<property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/>

因为mysql8.0版本和5.0版本不同,所以需要添加成如上模式。

如果是8.0版本的MySQL,需要使用相应的jar包。架包可以去官网搜索。

查看数据库版本可以使用如下方式:
在这里插入图片描述

然后使用相应的架包。

最后的数据库配置文件如下:

    <context:component-scan base-package="Spring5Jdbc"></context:component-scan>
    <!--    数据库连接池-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
        <property name="url" value="jdbc:mysql://localhost:3306/test?serverTimezone=UTC&amp;useSSL=false"/>
        <property name="username" value="root"/>
        <property name="password" value="root"/>
        <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/>
    </bean>
<!--    创建JDBCTemplate对象-->
    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<!--        注入dataSource-->
        <property name="dataSource" ref="dataSource"></property>
    </bean>

测试:

public class textAa {
    ApplicationContext ioc = new ClassPathXmlApplicationContext("bean12.xml");
    @Test
    public void test() throws SQLException {
        DataSource bean = ioc.getBean(DataSource.class);
        Connection connection = bean.getConnection();
        System.out.println(connection);
        connection.close();
    }
}

最后连接成功:
com.mysql.cj.jdbc.ConnectionImpl@598bd2ba

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据库连接是一种常见的优化数据库性能的方法,可以提高应用程序对数据库的访问效率和性能。以下是实现数据库连接的一些步骤: 1. 初始化连接:在应用程序启动时,创建一定数量的数据库连接,并将其保存到连接中。 2. 确定连接大小:根据应用程序的需求和数据库的负载情况,确定连接的大小,即可以容纳的最大连接数。 3. 确定连接的有效性:在连接中的连接可能会因为网络故障或数据库错误而失效。因此,需要对连接进行有效性检查,以确保连接中只有有效的连接。 4. 管理连接的释放:在应用程序使用完连接后,需要将连接释放回连接中,以便其他应用程序可以使用它们。同时,需要确保连接在使用后被及时关闭,以避免因连接泄漏而导致的资源浪费。 5. 处理连接溢出:当连接中的连接数达到最大值时,需要处理连接溢出的情况,例如等待其他应用程序释放连接,或者创建新的连接以容纳更多的请求。 6. 定期检查连接:需要定期检查连接中的连接是否有效,并清除过期的连接,以避免资源浪费。 7. 实现线程安全:连接需要实现线程安全,以避免并发访问时出现的问题,例如连接的竞争条件和死锁问题。可以使用锁或同步机制来实现线程安全。 总之,实现数据库连接需要考虑很多因素,包括连接的有效性、连接大小、连接溢出、释放连接等,需要根据具体的应用程序需求来进行配置和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值