gpt4 book ai didi

mysql - GlassFish 动态 JDBC 池

转载 作者:行者123 更新时间:2023-11-29 14:07:19 26 4
gpt4 key购买 nike

我有带有 3 个数据库的 MySQL DBMS

  • 配置
  • master1
  • master2

JSF 2.1 应用程序使用特定用户名在配置数据库上登录,然后执行一些查询并获取进行连接的数据库的名称。

现在有了 2 个简单的数据库,解决方案就很简单:

  1. 使用配置连接 master1master2 并创建具有关系的单个单声道数据库...可能,但存在分离用户数据的请求 - 所以丢弃。

  2. 在 Glassfish 中创建 n 个池,然后使用适当的池。

实际上我正在使用这个解决方案,但如果我有 master 0...1000,我必须手动创建所有这些,这非常耗时。

我愿意:

  1. 照常连接到配置
  2. 检索数据库名称
  3. 检查资源(同名)是否存在
    1. 如果不存在;创建它
  4. 现在使用它

最佳答案

您应该查看这个答案:https://stackoverflow.com/a/21029975/686036 .

我相信您能够使用 RESTful API 来做您想做的事情。

  1. 连接到配置//不确定您是否需要再执行此步骤
  2. 检索数据库名称​​//这是你要做的
  3. 检查给定名称的资源是否存在

    curl LIST http://localhost:4848/management/domain/resources/jdbc-connection-pool/ 

    这将为您提供所有可用的 jdbc 连接池的列表。然后就由您来查找是否找到了您要找的人。

    1. 如果资源不存在,则创建它

      curl -X POST -H "X-Requested-By: GlassFish REST HTML interface" 
      -d id=jdbc/myjdbcresource -d connectionpoolid=DerbyPool
      http://localhost:4848/management/domain/resources/jdbc-resource

      这将是通过 cURL 请求在服务器上创建资源的示例代码。

  4. 使用应用程序中的资源//。

另请参阅:

关于mysql - GlassFish 动态 JDBC 池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14162711/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com