Воплощение Конфигурации источника данных Grails

Недавно я наткнулся на дивасхему - альтернативный набор привязок клавиш для DrScheme . Это модально, и часть оправдания связана с RSI - в частности, избегается много перекручивания запястья при нажатии Ctrl kbd> - Alt kbd> - Shift kbd> - что-то KBD>. Кодер провел неофициальный опрос коллег-кодеров и обнаружил, что пользователи emacs страдают от боли в запястьях больше, чем vi-кодеры.

Вы можете увидеть, как он делает короткую речь на LugRadio Live USA . (Видео представляет собой серию 5-минутных выступлений, и я не могу вспомнить, как далеко оно проходит, извините - если кто-то его смотрит и публикует здесь, я отредактирую этот пост, чтобы сообщить, когда он в видео).

Заметьте, я не использовал дивасхему.

36
задан miek 9 June 2009 в 13:35
поделиться

2 ответа

Вы можете использовать файл свойств, указанный в grails.config.locations, как способ экстернализации конфигурации источника данных. Ниже описано, как я обычно создаю проект Grails:

В моем DataSource.groovy я указываю это для производственной среды:

  ....
  ....
  production {
    dataSource {
        dbCreate = "update"
        driverClassName = "com.myorg.jdbcDriverNotExists"
        url = ""
        username = ""
        password = ""
    }
  }
  ....
  ....

Я указываю файл внешних свойств в моем Config.groovy:

grails.config.locations = [ "classpath:app-config.properties"]

В файле свойств ( хранится в grails-app / conf /). Я указываю фактическую информацию об источнике данных:

dataSource.driverClassName=oracle.jdbc.OracleDriver
dataSource.url=jdbc:oracle:thin:@host:port:sid
dataSource.username=sa
dataSource.password=secret

Я также использую файл свойств как способ переопределить другие значения, которые находятся в Config.groovy. Когда приложение развернуто, если мне нужно изменить информацию об источнике данных, я просто редактирую файл /WEB-INF/classes/app-config.properties и перезапускаю.

51
ответ дан 27 November 2019 в 05:39
поделиться

Приведенный выше ответ на самом деле не влияет на внешнюю конфигурацию. Он близок, но конфигурация все еще находится в приложении. Я бы использовал переменную среды JVM при запуске приложения / сервера, чтобы указать место за пределами приложения, где находится внешняя конфигурация. Считайте переменную среды в файле config.groovy и используйте ее для получения внешнего файла конфигурации. Примерно так:

def extConfig = System.properties.getProperty('ENVVAR');
grails.config.locations = [ "file:${extConfig}/${appName}-config.groovy"]
25
ответ дан 27 November 2019 в 05:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: