硬编码的SQL语句VS.用于执行查询的Web服务

时间:2013-02-13 10:06:40

标签: java sql database web-services

我正在开发一个与服务器中的MySQL数据库通信的Java应用程序。该应用应该能够从XML文件中读取一些数据,然后insert将信息读入database

我曾经将SQL Statements直接写入Java代码,但后来一位朋友建议我创建一个Web服务,为该工具执行所有SQL工作,并让该工具唯一的工作是读取XML并将数据发送到Web服务。

我的问题是,它应该得到这种努力吗?为什么或为什么不呢?

2 个答案:

答案 0 :(得分:1)

您打算如何创建Web服务部分?如果你有时间去做,值得尝试使用Core Java或任何Webservice框架,尽管我建议使用Core java,这将有助于保持对工具的最小依赖性。然而,需要大量的努力才能使XML和Webservice请求同步。我的看法 - 如果没有打破,就不要修理它。

答案 1 :(得分:1)

不建议在代码中使用SQL,因为它很难维护。应用程序也与数据库结构紧密耦合。每次数据库更改(或者您要迁移到新数据库)时,都需要对代码进行更改并再次发布。

我不认为网络服务是正确的答案。我建议你尝试下列之一:

  1. 如果您的应用程序使用大量表并且非常高的吞吐量并不重要,请使用Hibernate作为ORM工具。它具有许多功能,可以真正减少数据访问所花费的时间。

  2. 如果您没有那么多表并且没有时间学习Hibernate,请使用iBatis。掌握你需要30分钟。它本质上允许您将SQL放在一个单独的XML文件中,它将为您阅读。对于较小的应用程序,它非常有用,并且比Hibernate更快。

  3. 作为最后的手段,请将您的SQL放入您打开并执行的文本文件中。