Как указать местоположение файла H2 без изменения Tomcat? - PullRequest
0 голосов
/ 13 сентября 2018

На самом деле мое приложение представляет собой три отдельных приложения с общей базой данных.

Изначально я запускал свои приложения, используя встроенный Tomcat в Spring Boot и используя относительный URL-адрес для местоположения H2

jdbc:h2:file:./db/myapp;AUTO_SERVER=TRUE

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

Однако теперь мне нужно переупаковать как войну и развернуть на автономном Tomcat, который я не использую.т администрировать.Я хочу, чтобы приложение было как можно более автономным и не требовало изменения частей Tomcat для его запуска.

Использование приведенного выше URL не сработает, поскольку оно попытается поместить базу данных в каталог tomcat bin..

Другие варианты, о которых я думал, требуют изменений в том, как запускается Tomcat, и я бы хотел этого избежать.например,

  • Добавление переменной среды перед запуском Tomcat
  • Установка сценария setenv Tomcat bin dir
  • Запуск Tomcat с использованием CATALINA_BASE

Если я использую абсолютный путь, он будет работать, но он требует, чтобы я устанавливал его при каждом развертывании, а также каждый разработчик должен будет указывать его в своем конкретном каталоге и иметь локальные изменения.

Какие у меня есть альтернативы?

...