Java应用程序的多线程MySQL连接池

4

.我开发了一个Java应用程序,可以从指定的url下载html。我能够使用多线程下载。但是现在我想使用连接池。我搜索了各种方法来实现连接池,但是所有相关的都与客户端服务器应用程序有关(使用apache、Tomcat等)。但是我只需要在我的单台机器上使用。在这里,我只想在线程中下载html并将其插入到MySql数据库中。我该怎么做。


静态(单例)BoneCP实例。http://jolbox.com/ 或者自己编写!使用同步方法的静态同步集合就可以做到。 - jn1kk
我需要为同步集合创建多个连接实例吗? - tagneha
不确定您想问什么。但是,如果您想为所有线程使用多个连接,则需要创建多个连接(仍为单个池)。通常,您可以从硬编码的最小值开始,例如3。并始终检查不要超过最大值,范围通常在5到15之间。 - jn1kk
也请参考 JNDI 连接的概念:http://docs.oracle.com/javase/jndi/tutorial/ldap/connect/pool.html,以及 http://docs.oracle.com/javase/jndi/tutorial/getStarted/overview/。 - Hussain Akhtar Wahid 'Ghouri'
1
@Tagneha,你创建一个类。在该类中放置一个静态同步集合。然后创建一个实例存款方法,将连接存入池中,再创建一个实例获取方法,从池中获取连接。这两种方法都需要同步。获取方法应检查池的大小,如果为空,则创建一个新连接并立即返回它。如果池不为空,则从池中删除它(或标记为已使用)并返回(确保检查最大连接限制)。 - jn1kk
显示剩余2条评论
2个回答

1
您可以使用BoneCPC3P0DBCP中的任意一种,以便让您有几个选择。每种都有自己的优点和缺点,因此选择最适合您情况的方式由您决定。

0

看一下JNDI连接,请参考thisthis链接

JNDI的基本概念是处理连接池

在这里,您可以创建一个数据库连接池并重复使用已经存在的连接


请重新格式化你的回答,以使其不是代码格式,并添加链接。 - Mark Rotteveel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接