想要在Google App Engine上开发我的项目。我想使用谷歌大表作为数据库。对于数据库我有两个选项JPA和JDO。请你们建议我吗?两者对我来说都是新的,我需要学习它们。所以我会在回复之后专注于一个。JPA和JDO之间的区别?
回答
讨论。 http://www.datanucleus.org/products/accessplatform_2_1/jdo_jpa_faq.html
DataNucleus AccessPlatform支持Java持久性的JDO和JPA规范。因此,这两种技术都没有“既得利益”,相信用户可以选择他们最喜欢的产品。网络上有很多关于JDO和JPA的FUD,主要由RDBMS供应商实施。本FAQ更正许多这些点
JPA是持久性的领先java标准。所以我会说如果您使用RDBMS并需要ORM,请使用JPA。
Hibernate通常用作JPA实现。如果你需要一些额外的功能,你可以使用hibernate特定的注释。
这个问题看起来已经由于您使用的数据核,看到他们对JDO VS JPA的常见问题,在这里JDO vs JPA for Java on Google App Engine
但我想使用谷歌数据存储(大表)使用数据核心。我按照JPA或JDO – user246160 2010-02-12 05:37:27
Hibernate可能“通常用作JPA实现”,但它只适用于RDBMS,因此将无法工作GAE/J。根据GAE/J的文档,JDO与该数据存储非常接近,但如果持久性模型简单并且查询需求也很简单,那么JPA同样可以使用。使用JDO或JPA,用户需要使用DataNucleus – DataNucleus 2010-02-12 10:13:27
的一个重要区别是,JDO(合逻辑和数据),支持丰富的域模型,其实所有的持久对象可以有一个参考当前的PersistenceManager,发出查询,并且,我想,可能没有默认的字段持久性。
JPA不支持此类软件设计。实际上,每个实体都没有对PersistenceManager的引用,为了使它不得不求助于ThreadLocal变量,这不是一个非常优雅和强大的解决方案。
因为GAE BigTable不是RDBMS,所以JDO是更好的选择。在Aphache JDO有一些详细的比较文章,这对我很有帮助。
JPA通过ORM持久化java对象到关系数据,而JDO是java对象持久化的更一般的规范。因此,使用JDO将为您的对象提供更多的存储实现选项自由。
- 1. JPA和JDO规范有什么区别?
- 2. java中的SDO和JDO之间的区别
- 3. Spring-JPA和Spring-Data-JPA之间的区别
- 4. spring-data-jpa和spring-boot-starter-data-jpa之间的区别
- 5. 之间的〜/和的区别../
- 6. Datanucleus JPA和JDO实现与RDBMS之间的性能差异?
- 7. '#','%'和'$'之间的区别
- 8. {!!之间的区别!!}和{{}}
- 9. '+ ='和'= +'之间的区别?
- 10. “。+”和“。+?”之间的区别
- 11. .eq之间的区别。和==
- 12. #。/和#之间的区别。 ./
- 13. !=和!之间的区别==
- 14. “%〜dp0”和“。\”之间的区别?
- 15. | =和^ = css之间的区别
- 16. 之间的区别。和#
- 17. ==和case之间的区别?
- 18. “**/* /”和“** /”之间的区别?
- 19. jQuery - '。'之间的区别和“#”
- 20. “?1”和“?”之间的区别
- 21. `%in%`和`==`之间的区别
- 22. fmod和%之间的区别
- 23. 之间的区别:+和:+
- 24. JPA:在fied和getter上设置@Id之间的区别
- 25. 休眠时JTA,JPA和普通JDBC之间的区别
- 26. JPA级联注释和Hibernate级联注释之间的区别
- 27. 弹簧数据JPA和ORM之间的区别
- 28. JPA实体和Hibernate实体之间的区别
- 29. Hibernate库和Hibernate JPA库之间的区别
- 30. 类区域和堆之间的区别
链接再次死机。 – 2018-02-03 12:20:01