DAO,ORM和查询
问题描述:
需要将一个字段更新为一堆记录中的相同值。使用DAO/ORM结构,我会检索每个父对象,遍历每个子对象,更新它的字段,然后保存它。DAO,ORM和查询
只写SQL:update table set field = value where criteria = specified会更快。
我如何将这些东西放在一起?我只是坚持道的结构:
for (Table t : getTableDao().getTables()){
for(Child c : t.getChildren()){
c.setValue(1);
getChildrenDao().save(c);
}
}
干杯。
答
通常情况下,不应该在可能被认为是“正常ORM”的方式下进行大规模更新,正如您所描述的那样,循环遍历每个对象。
任何合理的ORM都有一种机制让您按照您的建议运行正常的SQL更新语句,这通常是正确的方法。
仅仅因为您使用的是ORM并不意味着您无法利用底下的基于关系集的系统。当对象有意义时使用对象,并在SQL有意义时使用SQL。
+0
听起来不错。干杯。 – StillLearning 2009-12-02 04:28:04
您使用的是哪个ORM?许多人可以根据需要编写一些sql。 – 2009-11-27 05:25:54
手工制作:O。目前的项目只有5个主表,所以我很快创建了一个带有一些基本ORM的简单dao系统。我会允许查询我认为的道奇。该应用程序将部署在非常有限的机器上,所以我关心使用Hibernate。有嵌入式德比可以使用的轻量级ORM吗? – StillLearning 2009-11-30 03:22:13
哦,它是一个基于Java SE 5的应用程序,与Swing – StillLearning 2009-11-30 03:23:00