tags:

views:

343

answers:

3

want to develop my project on Google App Engine .I want to use google big table as database. For the database I have two options JPA and JDO. Will you guys please suggest me on it? Both are new for me and I need to learn them. So I will be focused on one after your replies.

+1  A: 

JPA is the leading java standard for persistence. So I'll say use JPA if you are using RDBMS and require ORM.
Hibernate is generally used as JPA implementation. If you need some extra features you can use hibernate specific annotations.

This question already looks to be discussed here http://stackoverflow.com/questions/1418219/jdo-vs-jpa-for-java-on-google-app-engine

Padmarag
But i want to use google datastore(Big table) using Data Nucleus .than what i follow JPA or JDO
Hibernate may be "generally used as a JPA implementation" but it works only for RDBMS, and consequently will not work on GAE/J. As per the docs for GAE/J, JDO most closely matches that datastore, though if persistence models are simple and querying requirements are also simple then JPA can equally be used. With JDO or JPA the user will need to use DataNucleus
DataNucleus
+2  A: 

Since you're using Data Nucleus, see their FAQ on JDO vs JPA. http://www.datanucleus.org/products/accessplatform/jdo_jpa_faq.html

DataNucleus AccessPlatform supports both JDO and JPA specifications of Java persistence. As such it has no "vested interest" in either technology, believing that it is for users to choose which they like best. There has been much FUD on the web about JDO and JPA, largely perpetrated by RDBMS vendors. This FAQ corrects many of these points

marklai