如何在 Scala 中实现 DAO?
Posted
技术标签:
【中文标题】如何在 Scala 中实现 DAO?【英文标题】:How to implement DAO in Scala? 【发布时间】:2011-07-18 19:24:50 【问题描述】:我想在 Scala 中实现 DAO,如下所示:
trait DAO[PK,-T,-Q]
// T is a "value object", PK is a primary key, and Q is query parameters.
def create(t:T):Unit
def update(t:T):Unit
def remove(pk:PK):Unit
def find(query:Q):Seq[T]
这有意义吗?是不是看起来“太 Java”了? 您将如何在 Scala 中设计/实现 DAO?
【问题讨论】:
这取决于 DAO 的“核心”——这是一个非常主观的话题 ;-) 你想达到什么目的?与 ORM 无关或实施 Active Record 模式?如果你想实现 Active Record,那么已经有 ORM 可以这样做...... Lift 提供了一个功能齐全的 ORM,因此您不必自行推出 【参考方案1】:我认为 Scala 允许比 Java'ish DAO 更直接、更直接地使用 SQL 数据库。
您可能想查看http://squeryl.org/ 和此出色答案中提到的其他框架:https://***.com/questions/1362748/wanted-good-examples-of-scala-database-persistence/2318935#2318935
【讨论】:
非常感谢指向其他答案的链接。很有帮助,谢谢! 对于像我这样偶然发现这个问题的人,可以在internet archive找到链接的帖子。以上是关于如何在 Scala 中实现 DAO?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 EntityManager (JPA) 在 DAO 中实现 update() 方法?