gpt4 book ai didi

java - 用于 REST 服务的单个 MySql 数据库连接

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:19:22 24 4
gpt4 key购买 nike

我正在开发 Android 应用程序,它通过 REST 服务获取数据并将其发布到数据库。我在 Java 中使用 Jersey 和 Tomcat 配置了 REST 服务。

我在 REST 服务启动时创建了单一数据库连接。现在所有的 android 客户端都使用单一数据库连接。现在我只想知道在我的场景中使用单一数据库连接是不是一个好习惯。单一数据库连接可以娱乐吗多个并发请求??

请建议....

已更新当我测试以下场景时,它给出了不同的结果..我只是使用带有 Get 注释的 Jersey 配置了带有 tomcat 的简单 REST 服务器,在此注释中我编写了代码以使用已建立的数据库连接获取 ID 为 300 的员工的姓名当 REST 启动时......所以当我在我的网络浏览器上编写 http://192.168.15.9:8080/Rest/rest/person/sample 时,我得到了员工姓名......然后我创建了批处理文件以在 100 个选项卡中打开 url,我执行了批处理文件。同时我从我的虚拟机打开 url 并立即获得员工姓名..20 秒后员工姓名也显示在 100 个选项卡中..如果单个数据库连接不能用于并发用户那么为什么我给出响应迅速??谁能解释一下??

最佳答案

不,单个数据库连接不应该用于并发请求。您应该创建一个连接池(基本上是一组可重复使用的连接),根据需要从池中获取连接,然后将其释放到池中。

不要自己做!

因为你有 Tomcat,你可以配置一个 JDBC data source然后使用 JNDI 获取对此数据源的引用。数据源将为您提供连接,而无需您自己创建连接。 Tomcat 将在后台汇集(激活、维护和处置)连接。
或者,您可以使用自定义连接池,如 c3p0 , 但我强烈建议您使用服务器提供的设施。

如果出于任何原因,您必须在几分钟内部署您的产品(因此您没有时间设置数据源),那么您最好为每个请求打开和关闭连接 - 这很浪费 - 而不是而不是在所有请求之间共享一个连接。

关于java - 用于 REST 服务的单个 MySql 数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14682616/

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