使用spring JDBC对Hashmap进行数据库操作

时间:2014-12-05 16:14:42

标签: java spring jdbctemplate

我从webservice调用中获取了数千个数据。 (它将是id和版本号,对象列表)

我需要检查数据库中是否存在id的记录。如果它和版本号不匹配,我需要更新表 或者插入新记录。

您认为最佳解决方案

  1. 从数据库中获取记录并对其进行缓存。从列表中删除匹配的记录。准备一份需要更新的列表 其他需要插入然后调出程序以相应地插入和更新 (一旦我准备好列表,它可能是相对较少的记录)

  2. 遍历我从webservice收到的每条记录,并将id和版本传递给执行插入/更新的过程 根据需要 (使用连接池但是对于每条记录,我将调用该过程)

  3. 您认为哪种方法更好?或者您认为比这两种更好的解决方案

    对使用的技术的限制: Spring Jdbc 2.x,Java 1.7,Sybase数据库

    没有可用的ORM技术。

    我可以使用jdbcTemplate.batchUpdate()来调用过程

1 个答案:

答案 0 :(得分:0)

第一个选项优于选项2。

与应用程序服务器和数据库服务器之间的网络延迟相比,没有任何操 Thumb规则较小,性能更好。

不确定,与sysbase相关,但即使你可以在每个SP调用中处理5-10条记录,这甚至会比每次处理单条记录更好。