![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
di109 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 26.9.2012 Репутация: нет Всего: нет |
Ниже приведен код который используя шаблон Singliton создает пул соединения с БД, в сервлете в методе ИНИТ создается это соединение. На практике работает (ошибок нет)
1. Правильно ли написан код 2. Как, кога и где закрыть этот пул 3. Может мне показалось, но с пулом он стал работать медленнее, чем без пула
|
||||
|
|||||
Старовъръ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 8.5.2008 Репутация: 1 Всего: 10 |
1. Код выглядит правильно, однако Синглтон нужно инициализировать прям в статическом поле, а не при первом вызове. Иначе чревато проблемами в многопоточной среде, подробней о Singleton можно прочесть в этой статье. Плюс посмотри в сторону Dependency Injection фреймворков: Guice, Spring.
2. Думаю корректней сказать - завершить пул. Пул - это не соединение, он не закрывается. Разрушаться/завершаться он должен самим контейнером раз уж используется JNDI. 3. Без пула работать быстрей не может, т.к. соединение каждый раз создается новое. Собственно пул для этого и нужен. Когда приложение и сервер находятся на одной машине это не так ощутимо, однако все равно разница будет. Вот пример настройки пула для MySQL, однако там используется DI framework а не JNDI, надеюсь это не собъет с толку. Это сообщение отредактировал(а) Старовъръ - 25.12.2012, 21:56 -------------------- |
|||
|
||||
di109 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 26.9.2012 Репутация: нет Всего: нет |
А если возникнет такая ситуация: есть сервлет (контроллер), модель (java класс), и вид (jsp файл),
сервлет (контроллер) - используя методы модели, (заносит, удаляет, обновляет данные в БД), в качестве соединения используется pool, который создается в методе init() и завершается в методе destroy(). Будет ли считаться за ошибку если я в виде (jsp файл) опять создам pool и используя метод модели, который возвращает данные, выведу данные из БД в браузер? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |