Mam zamiar utworzyć połączenie z moją bazą danych i używam EJB i JPA. Niedawno zacząłem robić te technologie, więc mam pewne problemy, aby to wszystko zrozumieć w tej chwili :) Wiem, że plik persistence.xml jest potrzebny do korzystania z JPA. Jest to plik, w którym konfiguruję sposób łączenia się z bazą danych, którą znam. Wydaje się jednak, że jest na to wiele sposobów.Pewne zamieszanie wokół zasobów JDBC i pul połączeń JDBC Glassfish
Jaka byłaby różnica (lub kiedy powinienem użyć jednej alternatywy względem drugiej?) Definiowania właściwości, takich jak nazwa użytkownika, baza danych, hasło itp. W pliku persistence.xml oraz w Glassfish? Zalety/wady, jeżeli występują.
Poniżej zamieszczonego zdjęcia mam zasoby JDBC i puli połączeń JDBC. Jestem trochę zdezorientowany terminologią tych dwóch. Dlaczego nie dodamy właściwości, takich jak nazwa użytkownika, baza danych, hasło itp. W zasobach JDBC? Czy ktoś mógłby wyjaśnić różnicę między nimi a tym, co one oznaczają?
JDBC Resources
JDBC zasób (źródło danych) dostarcza aplikacje w środki łączący się z bazą danych. Zwykle administrator tworzy zasób JDBC dla każdej bazy danych, do której dostęp mają aplikacje wdrożone w domenie . (Jednak więcej niż jeden zasób JDBC mogą być tworzone na bazie .) http://download.oracle.com/docs/cd/E19316-01/820-4335/ablih/index.html
myślę, że to dziwne, że możemy dodać takie właściwości, na basenie, ale nie w zasobie, ale prawdopodobnie nie rozumieją pojęcia.
Kiedy ustawiasz właściwości w pliku persistence.xml? Kiedy masz aplikację w Java SE? Ale w przeciwnym razie jest to zasadniczo te same właściwości i tak można je zdefiniować w pliku persistence.xml? – LuckyLuke
Tak, tylko w zwykłej waniliowej aplikacji Java SE ma to sens (na przykład, gdy chcesz przetestować swój projekt JPA). W kontenerze Java EE naprawdę chciałbyś skorzystać z JTA z zasobami zarządzanymi przez kontener, aby Twoje EJB mogły dobrze wykonywać swoją pracę w kontekście transakcyjnym. Zwykle podajesz inny "persistence.xml" w swoim projekcie sieciowym, który dziedziczy klasy z projektu JPA i zastępuje typ transakcji JTA, wraz z '' wskazuje na nazwę JNDI kontenera zarządzane źródło danych. –
BalusC
Okey, wtedy myślę, że zaczynam to rozumieć :) – LuckyLuke