JDBC数据库连接技术详解

更新:11-16 名人轶事 我要投稿 纠错 投诉

1.数据库连接池

什么是数据库连接池?

目前连接数据库的方法是通过DriverManager.getConnection接口方法获取连接对象Connection。但每次都通过这种方式获取数据库连接对象,比较麻烦,而且耗费资源。

每次需要连接对象时,都需要通过该方法获取数据库连接对象,非常耗时。如何优化数据库连接对象的获取,使其更短:

使用数据库连接池:在连接数据库之前使用几个数据库连接对象变量来连接数据库(一直连接,永不断开),在池中等待,当要使用数据库连接对象时,直接去pool 使用事先已经连接的对象,使用完后将对象返回到池中。如果池中存在三个预连接的数据库连接对象,但是三个对象同时被使用,那么当下一个用户来使用该数据库连接对象时,他将不得不等待前面的对象用完。该对象被返回到池中,然后再次使用。

连接池的作用是预先准备好多个已经连接到数据库的对象,以备使用。但当你想使用它们时,你可以直接将它们从池中取出,用完后放回原处。优化数据库连接。

Java公司没有实现数据库连接池。它只是做了规范,并没有给出数据库连接池的具体概念。相反,它创建了一个数据源javax.sql.DataSource。该数据库源仅用于数据库连接。优化方法的标准化接口。至于你如何实现这个数据库连接池,就由你来定义了。或者你不想自己使用数据库连接池方法。您只需要在这里以优化的方式向我提供数据库连接对象即可。

这是数据源接口最重要的两个方法。该接口仅提供获取数据库连接对象的规范,您可以自行实现。业界流行的两个数据源插件:

C3P0是常用的、占用资源较少的数据源插件。 DBCP是Apache提供的数据源插件。

DBCP:DATABASE CONNECTION POOL:APACHE启动的数据源插件:

apache官网上的组件下。我们使用maven下载jar包。

您可以选择以上两项之一。

以上就是具体的操作类。

数据库连接池的目的是优化数据库连接对象。它不会像jdbc那样自动为你添加驱动程序。您需要自己手动添加驱动程序。

连接方法如上。

可以看到,我们可以使用数据源类来获取多个连接对象,最多8个。默认情况下,池中有8个连接对象。您可以自行设置池中连接对象的最大数量:

注意:连接池中的对象用完后,必须调用close方法将对象放回池中。

如果其中一个关闭,则可以重新连接第四个。如果是在老版本的DBCP中,这种情况下,第四个的hashcode和第三个的hashcode是一样的,也就是说,其实,第三个连接完成后,就返回了连接对象到池中,而第四个连接仍然具有相同的对象。

C3P0的优点是速度快,占用内存少。 DBCP 2 版改进了资源管理,而DBCP 1 版在资源管理方面做得不太好。

C3P0是一个开源数据源插件,可以进行自动资源回收。主要应用在Harbinet和Spring这两个第三方框架中。

在maven中下载。

主要使用的操作类就是上面的那个。其配置信息可以使用set来设置,也可以将信息放在文件中。

事实上,DBCP和C3P0中的操作类都实现了javax.sql.DataSource接口。

未来企业普遍会使用C3P0来更好地优化资源。

C3P0的优点是:可以自动回收资源,

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!

用户评论

人心叵测i

JDBC 真的是数据库编程的神器啊!

    有9位网友表示赞同!

回到你身边

想跟数据库打交道,直接就拿jdbc开始敲代码吧~

    有20位网友表示赞同!

你很爱吃凉皮

学习了很久JDBC,感觉理解越来越深刻了。

    有8位网友表示赞同!

汐颜兮梦ヘ

总是被JDBC的驱动搞得头疼,哪篇教程能讲清楚一些?

    有12位网友表示赞同!

作业是老师的私生子

JDBC 能连接各种数据库,真方便!

    有9位网友表示赞同!

拉扯

前端只负责显示数据,后台用JDBC操作吧。

    有20位网友表示赞同!

灬一抹丶苍白

java 和mysql 配合jdbc真是绝配。

    有11位网友表示赞同!

慑人的傲气

不太喜欢写太复杂的SQL语句,感觉可以用jdbc简化一下逻辑。

    有18位网友表示赞同!

Edinburgh°南空

JDBC 真的不是门槛比较高的技术吗?

    有19位网友表示赞同!

。婞褔vīp

感觉JDBC 用来处理数据还是非常强大的。

    有13位网友表示赞同!

西瓜贩子

想学点数据库,应该先从JDBC开始吧!

    有18位网友表示赞同!

有阳光还感觉冷

大家推荐哪些好用的JDBC驱动啊?

    有5位网友表示赞同!

单身i

JDBC的架构真的很清晰易懂啊!

    有8位网友表示赞同!

柠夏初开

学习jdbc的过程中遇到很多问题,需要多琢磨琢磨。

    有15位网友表示赞同!

孤自凉丶

JDBC 真的太常用啦,掌握一下很有必要。

    有15位网友表示赞同!

冷落了♂自己·

写完代码发现jdbc连接数据库失败了,好沮丧。。。

    有10位网友表示赞同!

暖栀

网上有很多关于JDBC的案例和教程,可以参考学习啊!

    有12位网友表示赞同!

大王派我来巡山!

JDBC 的应用场景很多,真是太厉害了!

    有12位网友表示赞同!

孤街浪途

JDBC 可以让我更自由地操作数据。

    有12位网友表示赞同!

堕落爱人!

要想成为一名合格的 Java 开发者,jdbc 是必不可少的技能。

    有12位网友表示赞同!

【JDBC数据库连接技术详解】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活

上一篇:揭秘写作动力:探索我投身笔耕的深层原因 下一篇:探索隐秘小屋之旅:发现宁静与自然的完美结合