Search code examples
javaspringspring-bootyamlspring-boot-configuration

Map<String, User> in yaml file for @ConfirgurationProperties in java?


Hello I have a configuration class in a spring boot project that looks something like this .

  @ConfigurationProperties(config.value) 
     public class ApplicationProperties{
              Map<String, User> userProperties;
        }
       
     public class User{
              String userName;
              String userCity;
      }

How do I give value for userProperties in my application.yaml file ?


Solution

  • Given your example, the corresponding configuration properties for two different users in application.yml would look as follows:

    userProperties:
      user1:
        userName: jane
        userCity: New York
      user2:
        userName: john
        userCity: Lisbon