#spring #spring-boot #spring-mvc
Вопрос:
Я из asp.net фон и недавно перешел на Java, а затем в Spring Core, а затем в Spring Boot. В asp.net у нас был только один файл для всех конфигураций, будь то строка подключения к бд или любой флаг коммутатора, все, что связано с конфигурацией, находится в web.config в asp.net. Как это работает в Spring Core и Spring Boot ? Как называется файл в этих двух случаях ?
Ответ №1:
Приложение SpringApplication имеет свойства компонентов (в основном задатчики), поэтому вы можете использовать его Java API при создании приложения для изменения его поведения, или вы можете экстернализировать конфигурацию, используя свойства spring.main.*
, например, в application.properties
или . application.yml
Пример обоих этих способов:
- Использование свойств установщика компонентов для конфигурации. Вы можете видеть, что значения жестко закодированы:
@Configuration
public class DataSourceConfig {
@Bean
public DataSource getDataSource() {
DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create();
dataSourceBuilder.driverClassName("org.h2.Driver");
dataSourceBuilder.url("jdbc:h2:mem:test");
dataSourceBuilder.username("SA");
dataSourceBuilder.password("");
return dataSourceBuilder.build();
}
}
- Пример экстернализации с.
application.properties
Здесь эти значения анализируются и непосредственно используются для подключения к бд:
spring.datasource.url=jdbc:h2:mem:test
spring.datasource.driver-class-name=org.h2.Driver
проверьте https://docs.spring.io/spring-boot/docs/1.2.0.M1/reference/html/howto-properties-and-configuration.html для получения дополнительной информации.
Комментарии:
1. когда вы говорите «экстернализировать», есть ли еще какой-нибудь другой способ ? Также есть какой-нибудь способ «интерлизации»?
2. @user2746466 да, я добавил примеры обоих из них
3. Если я хочу добавить больше файлов свойств, отличных от application.properties, могу ли я добавить это ? Скажем, я должен добавить «flags.properties», тогда как мне добавить ссылку на него в application.properties ИЛИ есть какой-либо другой способ ?
4. Да, проверьте профили пружин . Вы можете создать файл под названием «флаги приложений.свойства» и добавить его в список активных профилей, и приложение автоматически выберет его и применит переопределения по мере необходимости.