我正在使用旧的好Hibernate并阅读有关ORM区域的新闻。 ActiveJDBC似乎是一个相当新的ORM,有人在一个大项目中使用它吗? Hibernate更强大,为什么?什么ActiveJDBC是误导? 例如它是否具有L1缓存并在Spring内部管理事务中与Spring合作?
答案 0 :(得分:0)
免责声明:我是ActiveJDBC和其他JavaLite项目的作者。 ActiveJDBC比Hibernate更新,但自2009年以来一直存在.AJ不是Hibernate的重写,而是基于Active Record的不同ORM实现,主要受Ruby on Rails的启发。我个人在Sears,Humana,Groupon,Edovo,Discover Health等众多大型项目中使用过它。它不像Hibernate那样常用,但有很多知名公司使用它:GoDaddy,亚马逊,雅虎,Ebay等。
ActiveJDBC在Web应用程序中比Hibernate更强大,在Web应用程序中,您不需要保留对象图形,并且模型(实体)的每个实例都像地图一样,只是传递给视图。与Hibernate相比,这极大地简化了编码并减少了大约80%的代码。 ActiveJDBC在运行时平均比Hibernate快50%。
ActiveJDBC使用Pass-Through Model,这与Hibernate对象图模型完全不同。 Hibernate是在客户端 - 服务器时设计的,AJ是在Web应用程序和API时设计的。
L1缓存特定于Hibernate。 ActiveJDBC有一个different caching model。 ActiveJDBC没有"会话"。每个模型都对自己负责。有关更多信息,请参阅documentation。