Pdmiana bazy danych

0

Cześć
Bawię się ostatnio podstawami jee i nurtuje mnie taka kwestia czy mogę w dynamiczny sposób podmieniać bazy danych?
Już tłumaczę.
Zakładamy że mam bazę MySQL i np Firebird na obu jakieś info. W przypadku działania na czystym JDBC to zmieniam tylko namiar przy tworzeniu połączeń. Jednak gdy korzystam z JPA to muszę zrobić konfigurację persistance.xml i zastanawiam się jak można by doczepić info że mam dwie bazy jednocześnie drugi taki plik zrobić?

Jeszcze jedna kwestia mnie nurtuje. Hibernate a JPA. Moje rozumowanie JPA jest standardem od Oracla i do jego wykorzystania musimy użyć jakiegoś narzędzia jakim np jest Hibernate czy TopLink. Dobrze myślę?
Dzięki za pomoc w obu kwestiach.

0

zdefiniuj sobie kilka <persistence-unit />

JPA - standard j2ee do ORM-ów,
Hibernate, EclipseLink - implementacja JPA

0

Dobrze myslisz - JPA to tylko specyfikacja, zbior interfejsow i klas bazowych, ktore same w sobie nic nie robia. Potrzebna jest implementacja, tak zwany provider, i takimi sa wlasnie Hibernate (z dodatkiem hibernate-entity-manager) oraz Toplink, oraz EclipseLink i OpenJPA itp itd.

0

A jaki provider jest najlepszy? Jest jakaś różnica w wydajności między dostawcami JPA?

0

Nie ma najlepszego. Poszukaj w necie benchmarkow, jest ich troche i niemal wszystkie pokazuje ze Hibernate i EclipseLink sa na czele. Roznia sie one mozliwosciami i rozszerzeniami, ja wole EL.

0

chyba nie ma takiego kto Ci odpowie co jest najlepsze, a jak jest to z chęcią przeczytam jego post-a z uzasadnieniem.
A jakiego serwera aplikacji używasz? Bo od tego będzie zależało między innymi z jakiego ORM-a najlepiej będzie Ci korzystać.

0

Na obecną chwilę jadę na Tomcat ale będę musiał się chyba przesiąść do tych operacji na bazach na GlassFisha. A na tym drugim domyślnie jest chyba TopLink?

0

W glassfish 2.x byl toplink, w 3.x jest eclipselink.

0

ja polecam Ebean

http://www.avaje.org/

1 użytkowników online, w tym zalogowanych: 0, gości: 1