我们早期的经验和许多可重用的代码/组件大多使用Spring MVC,Hibernate,PostgreSQL数据库完成。
但最近我们计划开始一个新项目。我们决定在Scala中使用Play框架。我们是Scala的Play框架的新手。因此,我们无法决定使用什么ORM(对象关系映射)框架。由于许多可重用的代码,我们希望选择Hibernate。
我们发现关于Hibernate的可怕单词为" JPA在Scala中使用Hibernate播放它可能不是最好的方式,它应该被视为遗留和弃用"。我们真的很困惑使用什么?
在寻找可能性时,我们发现了Anorm和Hibernate。可能还存在一些其他框架,我们还不知道。
那么请建议我们使用Scala和PostgreSQL的Play框架使用什么?
提前致谢!
答案 0 :(得分:17)
如果你肯定想要一个ORM,那么JPA可能就好了。这将迫使您拥有可变的域模型类等,但也许这是您愿意接受的权衡。 (就个人而言,我不会)
如果您愿意接触数据库的其他方式,那么有一些有趣的选择:
这是一篇非常好的博客文章,比较了不同的库:http://manuel.bernhardt.io/2014/02/04/a-quick-tour-of-relational-database-access-with-scala/
答案 1 :(得分:1)
看一下Skinny ORM。
http://skinny-framework.org/documentation/orm.html
http://blog.seratch.net/post/110711051753/skinny-orm-for-play-framework
Skinny ORM不仅受到Rails ActiveRecord的高度启发,而且足够灵活,因为它是基于ScalikeJDBC库构建的,这是一个瘦而强大的JDBC包装器。
答案 2 :(得分:0)
ebean提供了与JPA类似的playframework,但不是JPA,您可以进行简单的查询和有效的操作(流,部分更新...)