Веб-приложение обычно имеет по крайней мере один конфигурационный файл, который содержит jdbc конфигурацию и другие настройки. Можно поместить такой файл (-s) в .war файле или снаружи. Каковы недостатки и профессионалы этих подходов? Каков Ваш подход и почему?
ИМХО, лучший способ - использовать гибкий подход и позволить конфигурации находиться внутри и / или вне WAR (с некоторой дополнительной логикой для порядка поиска конфигурации и того, какие имена файлов / каталогов могут храниться в этой конфигурации).
У меня есть опыт работы с очень разными моделями / схемами развертывания - иногда это одна сборка / много конфигураций, иногда - даже: много сборок / одна конфигурация на одном сервере - странно, но может случиться ;-).
Это может быть особенно полезно, если вы разрабатываете какую-то платформу, которую ваши клиенты / пользователи могут развертывать в пользовательских средах, не указанных во время сборки WAR.
Поместите их в бой и используйте какие-то профили сборки (например, профили сборки maven ). Таким образом:
Способ реализации / использования профилей сборки зависит от вашей среды сборки.
Имхо, outside кажется наиболее удобным, если вам нужно развернуть один и тот же war в разных окружениях. Например, dev, itt, uat и production. Одна и та же сборка, разные конфигурации.