今天我发现了一个有趣的库 - ActiveJDBC。它提供了类似RoR的ActiveRecord接口,我正在考虑替换Hibernate,但是有一个问题 - ActiveJDBC能处理真正大的查询和结果吗?在任何应用程序中使用它代替Hibernate是否明智?
我是ActiveJDBC的开发人员,所以请带着怀疑的态度看待我的建议:)尽管我没有进行大量性能比较测试,但简单的测试(存储和读取数万条记录)显示,ActiveJDBC的速度大约比JDBC慢两倍,而Hibernate比ActiveJDBC慢两倍,这使得Hibernate比纯JDBC慢4倍。总体而言,ActiveJDBC比Hibernate更为轻量级,这也是其开发的初衷。请参阅此博客:框架到底能有多轻?ActiveJDBC vs Hibernate。
Hibernate的架构是在90年代考虑了客户端/服务器模型(会话、延迟加载、对象图等),而ActiveJDBC于2009年主要是为现代Web应用程序的请求/响应而构建的,并使用透传模型。根据您的逻辑、数据和数据库优化,您的效率将有所不同,但我确信ActiveJDBC几乎肯定会更快。 Mubin指出了需要迁移的事实,我想说这部分是正确的。迁移系统总是一个好主意,但只要表存在,ActiveJDBC就不关心它们是如何创建的。
干杯
FlyWay
作为迁移引擎一起使用,它看起来非常像RoR ActiveRecord,所以我很喜欢它。但是我正在开发一种平台,因此我必须尊重其他开发人员并提供Hibernate接口。 - skayred