【问题标题】:Multithreaded mysql Connection Pooling for Java ApplicationJava应用程序的多线程mysql连接池
【发布时间】:2013-05-23 13:09:43
【问题描述】:

。我开发了一个从指定 url 下载 html 的 java 应用程序。我可以在多线程中下载。但现在我也想使用连接池。我搜索了各种我们可以执行连接池的方法,但都是相关的到客户端服务器应用程序(使用 apache、Tomcat 等)。但我只需要在我的单机上使用它。这里我只想下载 html 并在线程中插入 Mysql 数据库。我该怎么做。

【问题讨论】:

  • 静态(单例)BoneCP 实例。 jolbox.com 或者自己写!使用同步方法的静态同步集合就可以了。
  • 我需要为同步收集创建多个连接实例吗?
  • 不确定您要问什么。但是,是的,如果您想为所有线程使用多个连接,则需要创建多个连接(仍然是单个池)。通常,您从硬编码的最小值开始,例如 3。并且始终检查不超过最大值,从 5 到 15。
  • @Tagneha,你上课了。您在该类中放置了一个静态同步集合。然后创建一个实例存放方法,将连接存放到池中,然后创建一个实例获取方法,从池中获取连接。两种方法都需要同步。 get 方法应该检查池的大小,如果它是空的,则建立一个新连接并立即返回它。如果池不为空,请将其从池中移除(或将其标记为已使用)并返回(确保检查最大连接限制)。

标签: java mysql connection-pooling


【解决方案1】:

您可以使用BoneCPC3P0DBCP 给您一些查看。每个都有自己的优点和缺点,因此您可以选择最适合您的情况。

【讨论】:

    【解决方案2】:

    看看JNDI连接 参考thisthislink

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

    在其中创建数据库连接池并重用现有连接

    【讨论】:

    • 请重新格式化您的答案,使其不被格式化为代码,然后添加链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-03
    • 1970-01-01
    • 2016-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多