2014-09-21 52 views
0

在一所大学的项目,我有一个Java应用程序,我应该在哪里创建本地数据库,并从数据库连接断开连接?

主要方法做一些东西,然后调用一个方法是每10秒:
-connects到本地数据库,(本地主机,用户名和密码都知道) ,
- 做一些东西与表中的数据
- 然后断开连接。

我的问题是:
1-这是一个坏主意,每次运行此方法时连接和断开连接到数据库?我应该在主要方法中连接并断开连接,并将数据库处理程序作为参数传递?

2-这个项目运行在我的电脑becouse我有MySQL进程(我使用Xampp)运行,因为我知道数据库名称和表名称。如果我希望这个项目能够在任何地方运行(不让其他人在本地mysql中创建一个具有相同名称和表的数据库),我应该从我的项目创建数据库还是表?那可能吗?

谢谢!

回答

0
  1. 你的程序运行多久?如果它运行2分钟,并且你每10秒连接一次,那根本不会受到伤害。如果没有其他人或只有一小部分人正在使用同一个数据库,那么可以在几个小时内完成此操作。给我们更多的信息。如果它是一个长时间运行的应用程序或守护进程,或者您关心性能,那么维护一个持久连接(只有一个连接和断开连接)可能是一个优势。但是,如果有其他人使用相同的数据库,则不应该长时间保持连接。在每次使用(交易或方法调用)后更好地释放它。

  2. 如果您希望程序在任何地方运行,您可以通过制作Web应用程序来完成此操作,例如,使用Tomcat。对于简单的数据库应用程序来说这并不太复杂。另一种解决方案是使用像H2,HSQLDB或Apache Derby这样的嵌入式数据库。您可以将这些数据库(和数据本身)发布到您的应用程序或项目中,并且需要运行它的任何人都无需安装MySQL或其他软件。

+0

- 它仅运行几分钟,只连接到数据库 -ok我会考虑这两个解决方案一个人,不知道嵌入式数据库甚至存在!谢谢! – lukeroman 2014-09-21 17:17:19