想检查Spring Boot是否提供帮助来使用除application.properties
文件之外的配置文件。例如: my-custom.properties 文件,该文件可以是特定于配置文件的,
例如:
my-custom-dev.properties
for dev 个人资料my-custom-uat.properties
燕麦个人资料编辑:问题是,我有普通的application- {env} .property文件,除此之外,还有其他属性文件与它们的数据内容一致(例如:我想要的用于日志的DB特定属性)存储在db-log.properties中,如何使其他文件配置文件敏感?
答案 0 :(得分:0)
是的。绝对。您只需要在启动时提供所需的个人资料即可。
例如:
function add_acf_option_page() {
if( function_exists('acf_add_options_page') ) {
acf_add_options_page(array(
'page_title' => 'Theme General Settings',
'menu_title' => 'Theme Settings',
'menu_slug' => 'theme-general-settings',
'capability' => 'manage_options',
'redirect' => false
));
acf_add_options_sub_page( array(
'page_title' => __( 'Books Shortcode Reference', 'textdomain' ),
'menu_title' => __( 'Shortcode Reference', 'textdomain' ),
'parent_slug' => 'theme-general-settings',
'capability' => 'manage_options',
'menu_slug' => 'books-ref-page',
) );
}
}
add_action('acf/init', 'add_acf_option_page' );
function add_custom_option_page() {
add_submenu_page(
null,
__( 'Books Shortcode Reference', 'textdomain' ),
__( 'Shortcode Reference', 'textdomain' ),
'manage_options',
'books-ref-page',
'books_ref_page_callback'
}
add_action('admin_menu', 'add_custom_option_page');
function books_ref_page_callback() {
?>
<div class="wrap">
<h1><?php _e( 'Books Shortcode Reference', 'textdomain' ); ?></h1>
<p><?php _e( 'Helpful stuff here', 'textdomain' ); ?></p>
</div>
<?php
}
将使用application-prod.properties
-Dspring.profiles.active=prod
将使用application-custom.properties
答案 1 :(得分:0)
除了application.properties文件,
可以使用以下约定定义特定于配置文件的属性:application- {profile} .properties。
环境具有一组默认配置文件(默认情况下,为[default]),如果未设置任何活动配置文件,则使用这些默认配置文件(换句话说,如果未显式激活任何配置文件,则将加载application-default.properties中的属性) )
要运行多个配置文件:
1.application-prod.properties
2.application-dev.properties
node_modules
3.application.properties(默认配置文件)
git+https://
4。带有自定义属性文件的命令行Args
spring.config.name -设置配置文件名称(逗号分隔值) spring.config.location -设置Spring Boot查找外部化配置文件的位置。
roi[0]
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-profiles.html
答案 2 :(得分:0)
除了application.properties
文件之外,您还可以根据需要将其定义为application-{profile}.properties
。
所选文件将在启动后根据您选择的配置文件确定。
答案 3 :(得分:0)
您可以将其与有效的个人资料一起使用
@Configuration
@PropertySource("classpath:my-custom-${spring.profiles.active}.properties")
答案 4 :(得分:-1)
spring使用的默认约定是application-.properties。因此,如果profile是dev,那么它将寻找application-dev.properties
您还可以使用bootstrap.properties文件,并可以指定spring.application.name = my-custom
在那种情况下,spring将查找my-custom.properties文件,并且您当然可以将其与profile dev,uat一起使用,因此属性文件名应为my-custom-dev.properties。
您还可以将配置文件作为命令行参数以及-Dspring.config.location =文件的路径传递。