Ưu điểm và nhược điểm của việc chọn JDO hoặc JPA cho một ứng dụng Grails sẽ chạy trên Google AppEngineJava AppEngine: JDO hoặc JPA, Cách chọn?
Trả lời
Bằng cách này, Grails có độ bền vững dữ liệu được xây dựng trên Hibernate. Làm thế nào để bạn nghĩ rằng JDO sẽ giúp bạn trong một cái gì đó Hibernate sẽ không? Tôi không hiểu tại sao người ta lại chọn JDO mặc định. Theo như JPA là có liên quan, tôi sẽ khuyên bạn nên sử dụng JPA, Hibernate thực hiện JPA mà đi kèm với Grails, và không phải bất kỳ tính năng cụ thể Hibernate, trừ khi hấp dẫn khác.
[Không phù hợp hơn sau khi một sự thay đổi đáng kể trong câu hỏi]
Thats hoàn toàn tốt đẹp để có hoạt động CRUD trong tổ chức của bạn riêng của mình. Nhưng có những trường hợp bạn có thể thấy mình hoạt động trên nhiều thực thể, trong trường hợp đó một lớp có ích và sạch sẽ, IMHO. Một lần nữa, vấn đề yêu cầu của nó.
hibernate không hoạt động với GAE, do đó bạn bị kẹt sử dụng một số hình thức JDO hoặc JPA –
[Không còn phù hợp sau khi một sự thay đổi đáng kể trong câu hỏi]
Hãy xem các bài viết sau:
http://www.infoq.com/news/2007/09/jpa-dao
Âm thanh như nó thực sự phụ thuộc vào bản chất của ứng dụng của bạn và kích thước của nó. JPA là đơn giản vì vậy tôi muốn gắn bó với điều đó và cố gắng tránh một lớp DAO trong ứng dụng của bạn, miễn là nó là một ứng dụng khá nhỏ và đơn giản.
Liên kết đẹp, Jon. +1 –
I do xem lý do bạn chọn JDO. Không biết "mặc định" được áp dụng bởi poster khác là gì. JDO là datastore-agnostic. JPA thì không. JDO cho phép tìm nạp các nhóm. JPA thì không. JDO cho phép nhận dạng kho dữ liệu. JPA thì không. JDO cho phép các giao dịch kho dữ liệu. JPA thì không. Tất cả những điều này là hồ sơ công khai http://db.apache.org/jdo/jdo_v_jpa.html
JDO và JPA không điền vào cùng một không gian vấn đề. Chúng chỉ chồng lên nhau cho RDBMS. JPA chỉ được thiết kế cho RDBMS.JPA không phải là đơn giản hơn, bằng chứng là so sánh API tại http://db.apache.org/jdo/jdo_v_jpa_api.html
--Andy (DataNucleus)
Nếu bạn đang xây dựng cho AppEngine đường ngắn hơn và có những trục trặc ít nếu bạn sử dụng JDO. Khác, bạn sẽ có một lớp JPA xung quanh công cụ JDO của bạn.
- 1. Sự khác biệt giữa JPA và JDO?
- 2. Hibernate hoặc JPA hoặc JDBC hoặc?
- 3. JDO - Cập nhật đối tượng
- 4. Whats sự khác biệt giữa các đặc tả JPA và JDO?
- 5. Tại sao tài liệu Google App Engine nhấn mạnh JDO trên JPA?
- 6. Tôi có thể tối ưu hóa kho dữ liệu AppEngine Java/JDO như thế nào() để sử dụng ít viết hơn
- 7. Định cấu hình JDO trong Spring 3.1?
- 8. Sử dụng JDO trong Android
- 9. Java - JPA - Chú thích @Version
- 10. Appengine jdoconfig.xml cho cơ sở dữ liệu cục bộ
- 11. Chọn giữa java hoặc php cho GWT!
- 12. có thể loại bỏ các JAR liên quan đến JDO/JPA khỏi dự án GAE nếu sử dụng Twig/Objectify/etc không?
- 13. ngăn N + 1 chọn trong JPA
- 14. Tùy chọn xếp tầng JPA khi chạy
- 15. thư thử nghiệm với máy chủ phát triển appengine (java)
- 16. Chuyển đổi dự án Java Eclipse sang Google AppEngine
- 17. tùy chọn cấu hình appengine-maven-plugin như cờ jvm
- 18. Chọn phi thực thể có JPA?
- 19. JPA EntityManager tĩnh hoặc trường hợp?
- 20. Đếm người dùng duy nhất bằng Mapreduce cho Java Appengine
- 21. Java Google AppEngine quầy sharded mà không giao dịch
- 22. Danh sách kiểm tra cho thread-safe java trên appengine
- 23. hạn ngạch trên api tìm kiếm appengine cho java
- 24. appengine máy chủ phát triển java hiển thị mã nguồn
- 25. JPA hoặc JDBC, chúng khác nhau như thế nào?
- 26. appengine-application.xml
- 27. Tạo Dịch vụ Web Java bằng cách sử dụng Google AppEngine
- 28. Xây dựng Maven cho GoogleAppEngine, buộc phải bao gồm thư viện JDO?
- 29. Subquery trong chọn khoản với API JPA Tiêu chuẩn
- 30. Mảng Java và PostgreSQL
Bạn có ý nghĩa gì với JDO hoặc JPA không? –
Corrected, Cảm ơn – zotherstupidguy
điều này giải thích JDO vs JPA cho động cơ java google app - http://stackoverflow.com/questions/1418219/jdo-vs-jpa-for-java-on-google-app-engine –