понимание подключения к базе данных h2

#java #database #hibernate #spring #h2

#java #База данных #переход в спящий режим #spring #h2

Вопрос:

Прошу прощения за то, что не сделал домашнюю работу по этому вопросу и напрямую задал вопрос, но мне нужно понять, что означает строка подключения «jdbc: h2: h2db / database», чтобы получить подключение к базе данных h2.

Я хочу знать, что если я использую вышеуказанную строку в своем веб-приложении (закодированном на Spring и hibernate framework), которое размещено на сервере tomcat, то где находится моя база данных..

Пожалуйста, если кто-нибудь сможет мне вкратце объяснить, то это будет БОЛЬШОЙ помощью. Я новичок и должен понимать еще много вещей, поэтому я публикую этот вопрос, не прибегая к помощи Google о базе данных H2

Пожалуйста, ПОМОГИТЕ!!!!

Ответ №1:

Строка подключения или URL-адрес подключения — это именно то, что указывает детали подключения к базе данных через драйвер. Драйвером в данном случае является драйвер JDBC, который является способом взаимодействия Java с базой данных. Поставщики баз данных реализуют этот интерфейс и предоставляют драйверы. Предыдущая часть: в вашем случае это протокол, который является jdbc. Другим протоколом может быть jdbc: odbc для моста JDBC-ODBC. После протокола указывается спецификатор поставщика БД, которым в данном случае является h2, и, наконец, это имя базы данных. Не существует конкретного стандарта того, как должна быть структурирована строка подключения, но в значительной степени procotol:database_type:database_name: port являются общими.

Вот несколько строк подключения, на которые вы можете посмотреть.

Из вашей строки подключения видно, что вы используете h2 во встроенном режиме, поэтому база данных находится в том же окне, что и ваш tomcat.

Комментарии:

1. большое спасибо, маниш… я прочитаю больше о базе данных в памяти, но не могли бы вы, пожалуйста, сообщить мне, является ли эта база данных постоянной вне области действия программы или она изменчива?? я имею в виду, что это доступно только для определенного сеанса

2. У меня такое ощущение, что она находится в памяти (хотя в строке подключения должно быть указано: mem), поэтому база данных уничтожается каждый раз, когда вы отключаете Tomcat. Какие данные хранятся в этой базе данных? Если он хранит данные на уровне сеанса, то, скорее всего, мое предположение верно.

3. да, используя для данных, связанных с сеансом, в основном для принятого сообщения JSON из сети и используя его для обработки, и если при обработке возникает какая-либо ошибка, сообщение снова может быть извлечено из базы данных

4. Ах, как кэш. Итак, да, он выполняется во встроенной конфигурации в памяти.

5. Это встроено, но постоянно, смотрите URL-адреса БД в шпаргалке . Он находится в текущем рабочем каталоге, что часто не является хорошей идеей.

Ответ №2:

Эта строка означает «подключиться к h2 во встроенном режиме и указать ему на базу данных, расположенную по адресу [путь к запущенному приложению] / h2db / database». Если такой базы данных не существует, создайте ее для меня «. Вы также можете использовать абсолютный путь (начинающийся с «/»), такой как jdbc:h2:/dbs /h2/database. Найдите папку h2db в вашем рабочем каталоге.

Комментарии:

1. Операции… Слишком поздно. Пожалуйста, не обращайте внимания.