2010-10-31 81 views
3

ColdFusion的ORM的问题最佳实践ORM

我们使用ColdFusion 9,在过去6个月,而我们使用了一些新的功能,ORM是我们已经避免,因为我们平时工作在同一个非常大的网站上。多年来我们一直使用Apache OBJ,但后来我们又回到了CF,并使用我们自己的表生成的DAO对象来处理基本的CRUD。这些对象是基本的,需要手动重新生成模式更改,并且根本不建模表关系。为了补充这些,我们有一组用于多表查询的网关类。虽然所有这些都是非常定制的,但是,这些DAO和网关确实可以很好地控制我们执行的SQL,例如使用锁定提示和优化器提示。我们的网站很忙,但我们的数据库非常高效。

这么多历史课:这一点是我们有一个即将推出的新网站,将从头开始编写处理金融交易。我们通常会使用我们前面提到的DAO对象来处理CRUD,然后使用通常的多表连接的网关对象集,但我认为我们可能会使用嵌入的CF ORM进行调查...

因此,考虑到这一点,我很想听听其他人在忙碌的金融网站上使用ORM的经验教训,技巧和窍门。例如:

刷新SQL的最佳方法是什么?您对事务性ORM有哪些提示?您如何为ORM设置开发和活动网站?关于HQL呢?我们什么时候应该自己手动完成SQL呢?

在此先感谢!

+0

[使用CF-ORM的ColdFusion 9中需要注意的事项](http://stackoverflow.com/questions/2480377/things-to-watch-out-for-in-coldfusion-9- with-cf-orm) – Henry 2010-11-02 19:03:48

回答

4

简短回答,是!去ORM !!!

刷新SQL的最佳方法是什么?

ormflush()

什么秘诀你有没有交易ORM?

<cftransaction>transaction {}在CFScript中工作正常,甚至跨DSN工作,在9.0.1中有很大改进!手表http://tv.adobe.com/watch/max-2010-develop/coldfusion-undocumented/

如何为ORM设置开发和实时网站?

一样没有ORM,但你可以看看this.ormSettings.dbCreate如果u意味着DB制作部分

什么HQL?

怎么样? :)使用它时,你想要一个对象的数组,但没有什么阻止你使用旧的<cfquery>

什么时候我们应该只是自己做SQL呢?

当你觉得HQL没有做你想做的事。

退房:Things to watch out for in ColdFusion 9 with CF-ORM但请记住,有些点不再适用于9.0。1

+0

感谢Henry。其他'ORM陷阱'帖子回答了我很多更详细的关注。 – 2010-11-01 07:53:44