Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么好的ORMAPI能与scala或erlang一起工作_Orm_Scala_Erlang - Fatal编程技术网

什么好的ORMAPI能与scala或erlang一起工作

什么好的ORMAPI能与scala或erlang一起工作,orm,scala,erlang,Orm,Scala,Erlang,我正在考虑使用scala编程,但我真的很担心基于ORM的应用程序会变成什么样子。我目前使用hibernate作为我的ORM,我发现它是一个非常可靠的工具。我想知道是否有任何ORM工具是用scala编写的,但效率同样高,或者hibernate可以无缝地与之配合使用。我不想再像JDBC时代那样开始编写没完没了的sql查询。我对二郎也有同样的想法。erlang有好的orm吗??我可以将erlang与其他数据库管理系统一起使用吗?比如oracle和mysql与ORM一起使用?为什么不利用您可以使用标准的

我正在考虑使用scala编程,但我真的很担心基于ORM的应用程序会变成什么样子。我目前使用hibernate作为我的ORM,我发现它是一个非常可靠的工具。我想知道是否有任何ORM工具是用scala编写的,但效率同样高,或者hibernate可以无缝地与之配合使用。我不想再像JDBC时代那样开始编写没完没了的sql查询。我对二郎也有同样的想法。erlang有好的orm吗??我可以将erlang与其他数据库管理系统一起使用吗?比如oracle和mysql与ORM一起使用?为什么不利用您可以使用标准的事实,从而使用?为什么不利用您可以使用标准的事实,从而使用?我不知道任何用Scala编写的ORM。M.Odersky的书《Scala中的编程》中有一些基本上是DSL包装JDBC的代码,但这并不适合您

但是正如Brian所说,Scala在很大程度上与Java兼容,所以您可以使用Scala中的Java库

这里有一篇文章说,一般来说,Hibernate和Scala很容易协同工作。有一个但是。。。尽管如此,我还是坚持下去。发现的一个特殊问题是,Scala尚未完全支持注释,这可能在最近的2.8升级中得到了修复

不过,总的来说,如果这些人让它发挥作用,那么你也应该能够管理它


说得温和一点,我对Erlang就不那么乐观了。Erlang不是一种JVM语言,与Scala不同,它与Java有着显著的不同。但老实说,这就是我在这个问题上所能说的,因为我不是一个Erlang程序员。

我不知道有任何用Scala编写的ORM。M.Odersky的书《Scala中的编程》中有一些基本上是DSL包装JDBC的代码,但这并不适合您

但是正如Brian所说,Scala在很大程度上与Java兼容,所以您可以使用Scala中的Java库

这里有一篇文章说,一般来说,Hibernate和Scala很容易协同工作。有一个但是。。。尽管如此,我还是坚持下去。发现的一个特殊问题是,Scala尚未完全支持注释,这可能在最近的2.8升级中得到了修复

不过,总的来说,如果这些人让它发挥作用,那么你也应该能够管理它


说得温和一点,我对Erlang就不那么乐观了。Erlang不是一种JVM语言,与Scala不同,它与Java有着显著的不同。但老实说,这就是我在这个问题上所能说的,因为我不是一个Erlang程序员。

一旦你习惯了稍微不同的语法,Hibernate将在scala上工作,不会有太大困难

从java切换到scala的最大好处之一是,最初您可以将scala作为更简洁的java版本来使用,并逐渐转向更惯用的scala使用

使用hibernate,您将受限于传统的ORM方法,即拥有可变对象,以便在需要持久化时跟踪修改

更实用的方法可能涉及不可变对象,但似乎没有任何专门针对scala的ORM实现。scalaz包含一些包装JDBC的功能,但在这个阶段有一些相当稀疏的文档


lift web开发框架包含一个orm,但我不确定单独使用它有多容易。

一旦您习惯了稍微不同的语法,Hibernate将在scala上工作,不会有太大困难

从java切换到scala的最大好处之一是,最初您可以将scala作为更简洁的java版本来使用,并逐渐转向更惯用的scala使用

使用hibernate,您将受限于传统的ORM方法,即拥有可变对象,以便在需要持久化时跟踪修改

更实用的方法可能涉及不可变对象,但似乎没有任何专门针对scala的ORM实现。scalaz包含一些包装JDBC的功能,但在这个阶段有一些相当稀疏的文档


lift web开发框架包含一个orm,但我不确定隔离使用该框架有多容易。

Erlang不是面向对象的,所以为什么您要尝试使用像orm库这样的黑客程序,因为关系数据库和OO之间存在严重的阻抗不匹配。Erlang也会出现同样的不匹配。Mnesia更像是一个分层数据库,该模型与Erlang之类的函数式语言很好地配合使用。ORM库并不是最终的目标,特别是对于Erlang

Erlang不是面向对象的,那么为什么您要尝试和嵌入像ORM库这样的黑客程序,所有这些都是因为存在严重的阻抗失配
关系数据库和OO之间的tch。Erlang也会出现同样的不匹配。Mnesia更像是一个分层数据库,该模型与Erlang之类的函数式语言很好地配合使用。ORM库并不是最终的目标,特别是对于Erlang

如果您正在考虑Erlang,CouchDB可能是一个不错的选择。我不喜欢用具有不可变数据结构的函数式语言处理关系数据库。

如果您考虑的是Erlang,CouchDB可能是一个不错的选择。我讨厌必须从具有不可变数据结构的函数式语言处理关系数据库。

看一看。用Scala为Scala编写的ORM。

请查看。用Scala为Scala编写的ORM。

有作为的一部分,但可以独立使用

有作为的一部分,但可以独立使用

ok。。好建议。。但我听说scala将提供的所有并发性如何?这会与现有的hibernate架构很好地融合吗??在erlang中有类似的东西吗?据我所知,Scala并发性是基于VM线程的,所以它与Hibernate的线程模型应该没有什么不同。我承认这是我的猜测。Hibernate与Scala配合得非常好,请确保使用注释。你最好去冬眠,而不是像一个被烧焦的人那样说一个半生不熟的鳞片虫。。好建议。。但我听说scala将提供的所有并发性如何?这会与现有的hibernate架构很好地融合吗??在erlang中有类似的东西吗?据我所知,Scala并发性是基于VM线程的,所以它与Hibernate的线程模型应该没有什么不同。我承认这是我的猜测。Hibernate与Scala配合得非常好,请确保使用注释。你最好选择hibernate,而不是一个半生不熟的Scala ORMs,以一个被烧焦的人的身份说话。当我听说Erlang和数据库时,我最常遇到的名字是Mnesia。我还遇到了另一个有趣的产品,ErlyDB,一个ErlangDB包装生成器。我真正想知道的是,一旦开始使用erlang,我是否还必须在erlang函数中大量生成sql查询。像hibernate这样的ORM最吸引我的地方是,我可以一次生成所有的数据库表和java对象。在erlang中是否有这样的功能?当我听说erlang和数据库时,我最常遇到的名字是Mnesia。我还遇到了另一个有趣的产品,ErlyDB,一个ErlangDB包装生成器。我真正想知道的是,一旦开始使用erlang,我是否还必须在erlang函数中大量生成sql查询。像hibernate这样的ORM最吸引我的地方是,我可以一次生成所有的数据库表和java对象。在erlang中是否存在这样的情况?您能否解释一下,为什么您不喜欢使用不可变DSs处理函数语言的关系数据库,以及替代方案是什么?请详细说明。除非我遗漏了一些东西,否则在不可变结构中加载SQL语句的结果并不是不可能的。毕竟,FP如何将信息从(比如)原始文件加载到它们的结构中?它们确实如此,而且做得很好,因此从广义上讲,这与关系数据是一样的。更新和插入只不过是将不可变元组(指示更改的增量或整个集合,以适当的为准)发送回数据库。您能否解释一下,为什么您不喜欢使用不可变DSs处理函数语言的关系数据库,以及替代方法是什么?请详细说明。除非我遗漏了一些东西,否则在不可变结构中加载SQL语句的结果并不是不可能的。毕竟,FP如何将信息从(比如)原始文件加载到它们的结构中?它们确实如此,而且做得很好,因此从广义上讲,这与关系数据是一样的。更新和插入只不过是将不可变元组(指示更改的增量或整个集合,以适当的为准)发送回数据库。