Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.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
数据库第一个ORM for Play框架(Java),自动生成数据库模型_Java_Orm_Playframework_Playframework 2.0_Database First - Fatal编程技术网

数据库第一个ORM for Play框架(Java),自动生成数据库模型

数据库第一个ORM for Play框架(Java),自动生成数据库模型,java,orm,playframework,playframework-2.0,database-first,Java,Orm,Playframework,Playframework 2.0,Database First,几年来我首先在C、MVC、实体框架、数据库方面进行开发。现在我想试试Java,选择Play Framework和IDEA作为IDE。 现在我搜索的ORM系统如下: 易于集成在游戏框架中; 以数据库逆向工程生成类为主要工具; 使用简单的语言,如C中的LINQ ex:from x in context.MY_TABLE选择x Play有内置的ORM——它是Ebean,您只需在application.conf中取消注释几行,然后选择database engine other,然后在H2 ie.MySQ

几年来我首先在C、MVC、实体框架、数据库方面进行开发。现在我想试试Java,选择Play Framework和IDEA作为IDE。 现在我搜索的ORM系统如下:

易于集成在游戏框架中; 以数据库逆向工程生成类为主要工具; 使用简单的语言,如C中的LINQ ex:from x in context.MY_TABLE选择x
Play有内置的ORM——它是Ebean,您只需在application.conf中取消注释几行,然后选择database engine other,然后在H2 ie.MySQL中构建,如中所述

下一步在应用文件夹中创建模型包并开始添加模型

更多详情请参阅


不幸的是,它不支持逆向工程

我不知道IDEA是否支持DB->JPA实体逆向工程,但Eclipse Dali做得很好——我已经在几个项目中使用了这种方法,并对此感到满意

如果愿意,Play2可以与完整的JPA配合使用。Ebean只使用JPA注释。我喜欢Eben,因为即使我对JPA的criteria API不完全信服,我还是在JPA 2.0上进行了测试,所以不知道它在JPA 2.1上有多容易&EntityManager的有用性所有与连接/断开连接的实体的麻烦我都是JPA注释的忠实粉丝

对于任何对JPA感兴趣的人,我推荐这本书

顺便说一句:JPA的命名查询/JPQL可能适合类似sql的简单查询需求。Ebean不支持JPQL,因此如果想使用它,则需要完整的JPA实现,如Hibernate或eclipseelink。

我强烈建议使用:

支持只通过一个命令从控制台生成模型类:java-classpath jooq-3.1.0.jar;jooq-meta-3.1.0.jar;jooq-codegen-3.1.0.jar;postgresql-9.2-1003.jdbc4.jar;。org.jooq.util.GenerationTool/jooq_config.xml 完全控制SQL查询。 简单的SQL调试。非常简单:。 灵活而强大的API。 打字法。 SQL深入编程的理想选择。 支持Java和Scala。 对高级SQL类型的开箱即用支持,没有问题。 内置导出为xml、html、excel 内置支持批量插入。 很好的支持。 开源 支持许多数据库引擎。 个人感情 我一直很喜欢SQL,我真的有机会使用多种技术与许多ORM一起工作。NET:NHibernate、实体框架、Linq。Java:Hibernate,JPA。Scala:Anorm SQL,对我来说没有好的解决方案。我首先使用模型,然后使用数据库。每次我在应用程序的大多数关键点使用原始SQL和存储过程时。ORM会产生大量垃圾,很难进行分析和优化


当我找到乔克时,我非常怀疑。经过大约6-8个月的工作,我知道这就是它。该工具允许您编写与原始SQL类似的每个查询,并且是一个非常高效的工具。接下来,这个工具的发展非常迅速

Jooq不支持嵌套对象。这个想法很好,但不是很有用。

不幸的是,反向工程模型在Ebean中是不可能的。是的,实际上忘记了添加这个,对不起。。。幸运的是,DDL一代在第二个方向发挥了巨大的作用。无论如何,谢谢!也许,需要改变我的想法,首先编写代码会很好,特别是对于小项目,但我不能对老板说开放源码比MS产品好,因为开放源码没有工具来进行简单的编程,让程序员专注于逻辑层,让数据层交给特殊的人—db架构。首先,你需要。。。骑野兽:在使用Ebean的过程中,开发可以很容易地分为建模和主开发阶段,主要的区别在于您从Java模型声明中创建DLL,而不是按相反的顺序。在开始时,了解模型类中的更改如何影响DDL生成器是很重要的。事实上,这是每个项目中我最喜欢的阶段;保持冷静!jOOQ方法假设您并不真的想要这样做,至少不是以严格的OO方式。相反,您希望从数据库中获取一个元组流,并可能以FP方式转换该元组流。在这篇文章中可以看到一个关于