Spring boot application configuration question
up vote
2
down vote
favorite
I have following structure of my application
----
|
|____SpringBootApplicationA
|
|
|___module-1
|___module-2
Each module has its own configuration, For example, module-1 is library that talks to mysql, it has its configuration (connection string, username, password,etc...)
Now I want to represent this configuration in the form of Java POJO in module-1. application.yml
and a bean that read configuration and sets the values.
For example
class Module1Config {
private String key1;
private String key2;
// getters & setters
}
application.yml
at module-1
key1: val1
key2: val2
now as a consumer of module-1, SpringBootApplicationA
will receive module-1's configuration which is what set as default by module-1.
On the consumer side it will have application configuration like this
someKey1: someVal1
someKey2: someVal2
module-1:
key1: overrideVal1
and when initialization happens of module-1's beans, I want the values to be seen as
key1: overrideVal1
key2: val2
How to configure spring boot to respect default values and override them ?
Edit
class AppConfig {
private String key1;
private int key2;
private Module1Config conf;
// getters + setters
}
This is my example application config, as you can see it has some specific to application config and other configs it is leveraging from other modules.
I want conf
object to get assigned default set of value from module1 and then whatever application has specified as an override
java spring spring-boot
add a comment |
up vote
2
down vote
favorite
I have following structure of my application
----
|
|____SpringBootApplicationA
|
|
|___module-1
|___module-2
Each module has its own configuration, For example, module-1 is library that talks to mysql, it has its configuration (connection string, username, password,etc...)
Now I want to represent this configuration in the form of Java POJO in module-1. application.yml
and a bean that read configuration and sets the values.
For example
class Module1Config {
private String key1;
private String key2;
// getters & setters
}
application.yml
at module-1
key1: val1
key2: val2
now as a consumer of module-1, SpringBootApplicationA
will receive module-1's configuration which is what set as default by module-1.
On the consumer side it will have application configuration like this
someKey1: someVal1
someKey2: someVal2
module-1:
key1: overrideVal1
and when initialization happens of module-1's beans, I want the values to be seen as
key1: overrideVal1
key2: val2
How to configure spring boot to respect default values and override them ?
Edit
class AppConfig {
private String key1;
private int key2;
private Module1Config conf;
// getters + setters
}
This is my example application config, as you can see it has some specific to application config and other configs it is leveraging from other modules.
I want conf
object to get assigned default set of value from module1 and then whatever application has specified as an override
java spring spring-boot
add a comment |
up vote
2
down vote
favorite
up vote
2
down vote
favorite
I have following structure of my application
----
|
|____SpringBootApplicationA
|
|
|___module-1
|___module-2
Each module has its own configuration, For example, module-1 is library that talks to mysql, it has its configuration (connection string, username, password,etc...)
Now I want to represent this configuration in the form of Java POJO in module-1. application.yml
and a bean that read configuration and sets the values.
For example
class Module1Config {
private String key1;
private String key2;
// getters & setters
}
application.yml
at module-1
key1: val1
key2: val2
now as a consumer of module-1, SpringBootApplicationA
will receive module-1's configuration which is what set as default by module-1.
On the consumer side it will have application configuration like this
someKey1: someVal1
someKey2: someVal2
module-1:
key1: overrideVal1
and when initialization happens of module-1's beans, I want the values to be seen as
key1: overrideVal1
key2: val2
How to configure spring boot to respect default values and override them ?
Edit
class AppConfig {
private String key1;
private int key2;
private Module1Config conf;
// getters + setters
}
This is my example application config, as you can see it has some specific to application config and other configs it is leveraging from other modules.
I want conf
object to get assigned default set of value from module1 and then whatever application has specified as an override
java spring spring-boot
I have following structure of my application
----
|
|____SpringBootApplicationA
|
|
|___module-1
|___module-2
Each module has its own configuration, For example, module-1 is library that talks to mysql, it has its configuration (connection string, username, password,etc...)
Now I want to represent this configuration in the form of Java POJO in module-1. application.yml
and a bean that read configuration and sets the values.
For example
class Module1Config {
private String key1;
private String key2;
// getters & setters
}
application.yml
at module-1
key1: val1
key2: val2
now as a consumer of module-1, SpringBootApplicationA
will receive module-1's configuration which is what set as default by module-1.
On the consumer side it will have application configuration like this
someKey1: someVal1
someKey2: someVal2
module-1:
key1: overrideVal1
and when initialization happens of module-1's beans, I want the values to be seen as
key1: overrideVal1
key2: val2
How to configure spring boot to respect default values and override them ?
Edit
class AppConfig {
private String key1;
private int key2;
private Module1Config conf;
// getters + setters
}
This is my example application config, as you can see it has some specific to application config and other configs it is leveraging from other modules.
I want conf
object to get assigned default set of value from module1 and then whatever application has specified as an override
java spring spring-boot
java spring spring-boot
edited Nov 9 at 22:36
asked Nov 9 at 21:59
user3833308
4331721
4331721
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
3
down vote
accepted
Spring boot by default loads application.yml file
from src/main/resources
You can declare another application.yml file in
config folder of root path and configuration from
config folder will override configuration from src/main/resources
Config locations are searched in reverse order. By default, the configured locations are classpath:/,classpath:/config/,file:./,file:./config/. The resulting search order is the following:
file:./config/
file:./
classpath:/config/
classpath:/
Here is link from official documentation:
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
I think it’s helpful
Thanks Mykhalio, I made an edit to the question. I saw this document. I don't think it satisfies the scenario I mentioned.
– user3833308
Nov 9 at 22:37
1
I was asking question about something same here is link : stackoverflow.com/questions/53189279/…
– Mykhailo Moskura
Nov 9 at 22:43
Maybe this will help
– Mykhailo Moskura
Nov 9 at 22:44
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
3
down vote
accepted
Spring boot by default loads application.yml file
from src/main/resources
You can declare another application.yml file in
config folder of root path and configuration from
config folder will override configuration from src/main/resources
Config locations are searched in reverse order. By default, the configured locations are classpath:/,classpath:/config/,file:./,file:./config/. The resulting search order is the following:
file:./config/
file:./
classpath:/config/
classpath:/
Here is link from official documentation:
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
I think it’s helpful
Thanks Mykhalio, I made an edit to the question. I saw this document. I don't think it satisfies the scenario I mentioned.
– user3833308
Nov 9 at 22:37
1
I was asking question about something same here is link : stackoverflow.com/questions/53189279/…
– Mykhailo Moskura
Nov 9 at 22:43
Maybe this will help
– Mykhailo Moskura
Nov 9 at 22:44
add a comment |
up vote
3
down vote
accepted
Spring boot by default loads application.yml file
from src/main/resources
You can declare another application.yml file in
config folder of root path and configuration from
config folder will override configuration from src/main/resources
Config locations are searched in reverse order. By default, the configured locations are classpath:/,classpath:/config/,file:./,file:./config/. The resulting search order is the following:
file:./config/
file:./
classpath:/config/
classpath:/
Here is link from official documentation:
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
I think it’s helpful
Thanks Mykhalio, I made an edit to the question. I saw this document. I don't think it satisfies the scenario I mentioned.
– user3833308
Nov 9 at 22:37
1
I was asking question about something same here is link : stackoverflow.com/questions/53189279/…
– Mykhailo Moskura
Nov 9 at 22:43
Maybe this will help
– Mykhailo Moskura
Nov 9 at 22:44
add a comment |
up vote
3
down vote
accepted
up vote
3
down vote
accepted
Spring boot by default loads application.yml file
from src/main/resources
You can declare another application.yml file in
config folder of root path and configuration from
config folder will override configuration from src/main/resources
Config locations are searched in reverse order. By default, the configured locations are classpath:/,classpath:/config/,file:./,file:./config/. The resulting search order is the following:
file:./config/
file:./
classpath:/config/
classpath:/
Here is link from official documentation:
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
I think it’s helpful
Spring boot by default loads application.yml file
from src/main/resources
You can declare another application.yml file in
config folder of root path and configuration from
config folder will override configuration from src/main/resources
Config locations are searched in reverse order. By default, the configured locations are classpath:/,classpath:/config/,file:./,file:./config/. The resulting search order is the following:
file:./config/
file:./
classpath:/config/
classpath:/
Here is link from official documentation:
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
I think it’s helpful
answered Nov 9 at 22:27
Mykhailo Moskura
62712
62712
Thanks Mykhalio, I made an edit to the question. I saw this document. I don't think it satisfies the scenario I mentioned.
– user3833308
Nov 9 at 22:37
1
I was asking question about something same here is link : stackoverflow.com/questions/53189279/…
– Mykhailo Moskura
Nov 9 at 22:43
Maybe this will help
– Mykhailo Moskura
Nov 9 at 22:44
add a comment |
Thanks Mykhalio, I made an edit to the question. I saw this document. I don't think it satisfies the scenario I mentioned.
– user3833308
Nov 9 at 22:37
1
I was asking question about something same here is link : stackoverflow.com/questions/53189279/…
– Mykhailo Moskura
Nov 9 at 22:43
Maybe this will help
– Mykhailo Moskura
Nov 9 at 22:44
Thanks Mykhalio, I made an edit to the question. I saw this document. I don't think it satisfies the scenario I mentioned.
– user3833308
Nov 9 at 22:37
Thanks Mykhalio, I made an edit to the question. I saw this document. I don't think it satisfies the scenario I mentioned.
– user3833308
Nov 9 at 22:37
1
1
I was asking question about something same here is link : stackoverflow.com/questions/53189279/…
– Mykhailo Moskura
Nov 9 at 22:43
I was asking question about something same here is link : stackoverflow.com/questions/53189279/…
– Mykhailo Moskura
Nov 9 at 22:43
Maybe this will help
– Mykhailo Moskura
Nov 9 at 22:44
Maybe this will help
– Mykhailo Moskura
Nov 9 at 22:44
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53233781%2fspring-boot-application-configuration-question%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown