Подтвердить что ты не робот

Разница пула соединений, jdbc и jndi

Мне нужно знать, что мое понимание выше верно,

В пуле соединений вы устанавливаете несколько соединений с использованием java.sql.Datasource.

В jdbc мы непосредственно указываем URL-адрес соединения и oracle.jdbc.driver.OracleDriver и его всегда одно соединение, в котором другой запрос должен ждать завершения обработки соединения.

И с JNDI это похоже на прямой jdbc, где мы ссылаемся на параметр jdbc через имя, чтобы мы могли указать URL-адрес соединения и другие настройки на сервере приложений и не привязаны к приложению правильно?

4b9b3361

Ответ 1

Ну, это две разные вещи.

JDBC - это API базы данных Java, а JNDI - это интерфейс API именования java и каталога.

Главное, что в каталоге JNDI вы фактически храните JDBC DataSource, поэтому вы просто используете JDBC и получаете соединение через JNDI-поиск.

Вкратце: JDBC - это область базы данных, JNDI позволяет хранить объекты в виртуальном контексте (каталог), которые могут быть локальными, удаленными (детали реализации обычно не имеют значения).

Вы получаете доступ к этому контексту через имена, получая хранимые объекты, хорошо делиться вещами между различными модулями.

Серверы приложений обычно имеют контекст JNDI для обмена глобальными объектами в разных приложениях, пулы соединений - один из наиболее ярких примеров того, почему совместное использование через JNDI является хорошим. (Определите 1 пул соединений, разделите их между несколькими веб-папками)

Ответ 2

Я знаю, что все аббревиатуры сложны, когда вы впервые изучали Java, но привыкаете к этому, тратите много времени на чтение.. особенно официальные ресурсы из Java/Oracle