Tomcat和JDBC驱动程序

问题描述:

我在tomcat上部署了一个webapp,它使用JDBC驱动程序访问远程数据库。我的问题是:我怎样才能在中间,像代理,并嘲笑结果(不改变一行Java代码)?Tomcat和JDBC驱动程序

例如:有一个我可以使用的jdbc代理?

谢谢。

不更改/添加一行代码?从来没听说过。当然,如果你已经编写了一个接口并计划为你的代码编写JUnit测试,你可以看看像Mockito这样的模拟库来为你完成这项工作,不过,“创建”数据的工作将让你了解对于。

问题是:你想测试什么?你想验证你的SQL语句是正确的吗?还是交易界限?或者可能是DAO层中的一些数据处理?以这种方式思考可能会导致你对需要嘲笑的东西有不同的结论。

+0

目标是加速应用程序的使用(开发中)。远程数据库减慢了开发速度。 – power 2010-11-28 13:22:15

+1

啊,好的。我非常喜欢这个:http://hsqldb.org/ - 与其他游戏一样易于运行,但功能完备。也许这是一个解决方案? – 2010-11-28 13:45:01

您有几种选择:

  1. 使用嵌入式数据库,如H2。它甚至没有其他数据库的compatibility modes,所以你不必改变你的陈述。

  2. 使用类似Mockito的模拟库,就像Sanjay建议的那样。

  3. 使用dbUnit单元测试您的数据库。

  4. 在本地计算机上安装远程数据库(如果可行)。

编辑:从您的评论,似乎选择1和2是你的兴趣。

我还没有使用嘲笑,因为我并不需要它(我更喜欢使用真实的东西),但我不认为它没有用。

所以,我会集中一点上1:

退房H2的教程,具体地,大约connecting to database using JDBC的部分。另外,阅读quickstart指南不会伤害。您必须阅读才能理解;-)

为了兼容性,请检查我之前提供的链接,并使用适用于您正在使用的数据库的任何模式(您没有指定哪一个)。