处理JDBC检索的ResultSet的正确方法(转换为XML与在线验证)

时间:2013-12-24 19:43:55

标签: jdbc odbc jdbc-odbc

我的Java应用程序正在处理从XML解析的大量信息。对于某些方法,我需要在另一台机器上的SQL数据库中验证一些信息。我正在使用JDBC,目前用于每次验证,我调用DB Handling方法打开连接并返回结果集以进行验证。我不确定我是否采用最佳设计选项。这对我来说似乎非常虚伪和昂贵。我想知道是否有更好的做法。

  • 是否有正确的方法在整个应用程序运行时打开连接,因此每次验证迭代都没有浪费时间(打开连接)(我可能有数十万)。

    < / LI>
  • 我应该构建另一个应用程序来检索所有需要的表并将它们转换为保存在我的机器上的XML。之后,我的应用程序正常解析它们并具有更好的访问和性能

  • 我愿意接受任何更好的建议

1 个答案:

答案 0 :(得分:1)

当然,您可以在应用程序的整个生命周期中使用一个数据库连接。使用Singleton模式。如果您的程序运行时间较长并且长时间不使用数据库,则可能会丢失数据库连接(网络设备上的某种超时等)。对于这种情况,您可以使用数据库池。这样的池应该管理更长的不活动时间,或者为单独的线程提供单独的数据库连接。

我认为将数据转换为XML的解决方案并不好。为什么要将其转换为XML?这些数据多久更改一次?您要复制的数据库有多大?您想如何将本地副本与数据库同步?我认为XML文件中的本地副本增加了太多问题。如果数据小于或许您可以在程序开始时读取它,将其保存在某些数据结构中并用于验证其他数据?它甚至可以是SQLite或其他小型数据库。但是,只有当单例或数据库池性能非常弱时,我才会采用这种方式。