W niedługiej przyszłości będę musiał wykonać program w javie operujący na bazie danych. 90% operacji bedzie przez baze przechodziło i moje pytanie jest takie czy do zrobienia dosyć rozbudowanej bazy połączonej z java nadal korzysta się z jdbc?
Czy już jakoś inaczej wygląda ta kwestia?
jdbc i klepanie czystego sqla - beeeee
Skorzystaj z hibernate lub hibernate w implementracji JPA - możesz również użyć ibatis lub reszty orm. poza tym poczytaj o openJPA(mój faworyt), TopLink i tak dalej.
Temat rzeka, zależy od konkretnego projektu jak i od programisty.
Generalnie aplikacja ma być pół na pół desktopowe i webowa(początkowe przymiarki). A która z wymianionych opcji jest najbardziej przydatna w dalszej drodze z javą? Zakładam że hibernate jednak jako lajik tematu wolę zapytać.
jak pół na pół to skorzystaj z frameworka Vaadin + kontener JPA = sprawne i szybkie pisanie dla desktopa i webu (ostatni także dla stricte mobile z touch UI). Jedna aplikacja - 3 róźne platformy uruchomieniowe(web, mobile, desktop)
Jednak byłem chyba w błędzie bo aplikacja będzie webowa a baza na serwerze. Nie robilem tego nigdy wcześniej więc nie wiem co jest dobrym i w miarę przystępnym rozwiązaniem bez porywania się z motyką na księżyc.
Jeśli baza byłaby bardzo mała to opłacałoby się stawianie bazy in-memory np H2 Database. W innym przypadku lepiej stawiać normalną bazę poprzez interfejs JPA2. Zaletą jest to, że JPA2 dostarcza wielu funkcjonalności (ale i tak są dość ogólne), ale dostępnych jest wielu dostawców. Hibernate być może ma więcej funkcjonalności, ale wykorzystując Hibernate API byłbyś do tego mocno przywiązany.
ale wykorzystując Hibernate API byłbyś do tego mocno przywiązany.
Nie wiem jak mam interpretować Twoje słowa.
Tzn chodzi mi o to, że JPA jest takim przenośnym, ogólnym API i dostępnych do wyboru jest wielu dostawców JPA, np Hibernate, EclipseLink, DataNucleus (ten jest wykorzystywany na Google App Engine), itp
Natomiast API specyficzne dla Hibernate jest oczywiście tylko w Hibernate.
Wibowitowi chodzi o to że użycie JPA daje ci możliwość podmiany dostawcy usługi na innego w bardzo prosty sposób, bo API będzie takie samo. Jeśli użyjesz Hibernate API to musztarda po obiedzie.
A ja tak offtopicowo dla Wibowita:
Który dostawca jpa jest według Ciebie najwydajniejszy?