Thread View: pl.comp.lang.java
4 messages
4 total messages
Started by J-23
Fri, 12 Dec 2014 17:10
Jedna pula połączeń 2 pliki jar
Author: J-23
Date: Fri, 12 Dec 2014 17:10
Date: Fri, 12 Dec 2014 17:10
15 lines
1296 bytes
1296 bytes
Witam, Mam sobie BD potrzebuje zrobić coś takiego: Mam 2 biblioteki pliki jar które to muszą się połączyć z bazą danych tą samą. Do połączenia z bazą korzystam puli połączeń muszę zrobić tak by te 2 biblioteki korzystały z tej samej puli połączeń. Planuje całą tą klasę gdzie tworzy się pula wrzucić w zupełnie oddzielną bibliotekę i wtedy w tych 2 skorzystać z tej puli. Czy to dobry pomysł? Czy może to zrealizować inaczej? Proszę o radę Pozdrawiam
Re: Jedna pula połączeń 2 pliki jar
Author: splatch
Date: Sat, 13 Dec 2014 07:18
Date: Sat, 13 Dec 2014 07:18
30 lines
2769 bytes
2769 bytes
Twój patent jest rozsądny. Zależnie od rozkładu możesz zrobić to na trzy sposoby. Przyjmując, że masz moduły A, B oraz opcjonalnie C: A <- B (A wystawia pulę) A -> B (B wystawia pulę) A -> C, B -> C (C wystawia pulę) Z tych podejść C jest najczystsze, ponieważ wierzę, że masz powód dla którego A oraz B są rozdzielne, a w tym układzie C jest ładnie wydzieloną częścią wspólną. Zasadniczo wystawianie puli jakimś singletonem jest "śliskie" pod tym względem, że brak tej konkretnej klasy przy uruchamianiu wywali Ci NoClassDefError. Bezpieczniej jest "wstrzyknąć" javax.sql.DataSource. Klasa ta zawsze jest w JDK. Dzięki temu, że jest to interfejs możesz użyć dowolnej implementacji, włączając w to DBCP lub DriverManagerDataSource ze springa dla testów*. Pozdrawiam, Łukasz * Ewentualnie jdbc:embedded-database W dniu piątek, 12 grudnia 2014 18:10:06 UTC+1 użytkownik J-23 napisał: > Witam, > > Mam sobie BD potrzebuje zrobić coś takiego: > > Mam 2 biblioteki pliki jar które to muszą się połączyć z bazą danych tą > samą. Do połączenia z bazą korzystam puli połączeń muszę zrobić tak by > te 2 biblioteki korzystały z tej samej puli połączeń. > > Planuje całą tą klasę gdzie tworzy się pula wrzucić w zupełnie oddzielną > bibliotekę i wtedy w tych 2 skorzystać z tej puli. Czy to dobry pomysł? > Czy może to zrealizować inaczej? > > Proszę o radę > > Pozdrawiam
Re: Jedna pula połączeń 2 pliki jar
Author: J-23
Date: Sun, 14 Dec 2014 01:00
Date: Sun, 14 Dec 2014 01:00
36 lines
2584 bytes
2584 bytes
W dniu 13.12.2014 o 08:18, splatch pisze: > Twój patent jest rozsądny. Zależnie od rozkładu możesz zrobić to na trzy sposoby. Przyjmując, że masz moduły A, B oraz opcjonalnie C: > A <- B (A wystawia pulę) > A -> B (B wystawia pulę) > A -> C, B -> C (C wystawia pulę) > > Z tych podejść C jest najczystsze, ponieważ wierzę, że masz powód dla którego A oraz B są rozdzielne, a w tym układzie C jest ładnie wydzieloną częścią wspólną. > > Zasadniczo wystawianie puli jakimś singletonem jest "śliskie" pod tym względem, że brak tej konkretnej klasy przy uruchamianiu wywali Ci NoClassDefError. Bezpieczniej jest "wstrzyknąć" javax.sql.DataSource. Klasa ta zawsze jest w JDK. Dzięki temu, że jest to interfejs możesz użyć dowolnej implementacji, włączając w to DBCP lub DriverManagerDataSource ze springa dla testów*. > > Pozdrawiam, > Łukasz > > * Ewentualnie jdbc:embedded-database > Dzięki za info Zastanawiam się jeszcze nad patentem "JNDI Connection Pool" wtedy moŋłbym się odwoływać po nazwie i po sprawie odpada pakiet C Tylko wszystkie przykłady jakie znalazłem w sieci pokazują jak to zrobić we własnym projekcie. A jakie są potencjalne zagrożenia jeżeli całą konfigurację zwale na Tomcata i w instrukcji napisze coś takiego: Proszę o konfigurowanie puli połączeń na serwerze Tomcat JNDI o nazwie "mój program" wydaje mi się to najbardziej elastyczne bo programista tylko udostępnia nazwę i zamiecione nie musi dbać o zapewnienie sposobu konfiguracji puli. Tylko czy to jest bezpieczne? Pozdrawiam
Re: Jedna pula połączeń 2 pliki jar
Author: splatch
Date: Mon, 15 Dec 2014 07:58
Date: Mon, 15 Dec 2014 07:58
43 lines
3717 bytes
3717 bytes
Jeśli nie używasz żadnego wspomagacza to JNDI pod Tomcatem załatwi kwestię puli połączeń za Ciebie. Czy jest to bezpieczne? Zazwyczaj gdzieś wcześniej czy później pojawia się hasło w plaintext, więc jest to w zasadzie bez znaczenia. -- Łukasz W dniu niedziela, 14 grudnia 2014 02:00:54 UTC+1 użytkownik J-23 napisał: > W dniu 13.12.2014 o 08:18, splatch pisze: > > Twój patent jest rozsądny. Zależnie od rozkładu możesz zrobić to na trzy sposoby. Przyjmując, że masz moduły A, B oraz opcjonalnie C: > > A <- B (A wystawia pulę) > > A -> B (B wystawia pulę) > > A -> C, B -> C (C wystawia pulę) > > > > Z tych podejść C jest najczystsze, ponieważ wierzę, że masz powód dla którego A oraz B są rozdzielne, a w tym układzie C jest ładnie wydzieloną częścią wspólną. > > > > Zasadniczo wystawianie puli jakimś singletonem jest "śliskie" pod tym względem, że brak tej konkretnej klasy przy uruchamianiu wywali Ci NoClassDefError. Bezpieczniej jest "wstrzyknąć" javax.sql.DataSource. Klasa ta zawsze jest w JDK. Dzięki temu, że jest to interfejs możesz użyć dowolnej implementacji, włączając w to DBCP lub DriverManagerDataSource ze springa dla testów*. > > > > Pozdrawiam, > > Łukasz > > > > * Ewentualnie jdbc:embedded-database > > > > Dzięki za info > > Zastanawiam się jeszcze nad patentem "JNDI Connection Pool" wtedy > moŋłbym się odwoływać po nazwie i po sprawie odpada pakiet C > > Tylko wszystkie przykłady jakie znalazłem w sieci pokazują jak to zrobić > we własnym projekcie. > > A jakie są potencjalne zagrożenia jeżeli całą konfigurację zwale na > Tomcata i w instrukcji napisze coś takiego: > > > Proszę o konfigurowanie puli połączeń na serwerze Tomcat JNDI o nazwie > "mój program" > > wydaje mi się to najbardziej elastyczne bo programista tylko udostępnia > nazwę i zamiecione nie musi dbać o zapewnienie sposobu konfiguracji > puli. Tylko czy to jest bezpieczne? > > Pozdrawiam
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads