0
0
Spring Bootframework~10 mins

Custom configuration properties in Spring Boot - Interactive Code Practice

Choose your learning style9 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to define a configuration property class with the correct annotation.

Spring Boot
@[1]("app.settings")
public class AppSettings {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
Drag options to blanks, or click blank then click option'
AComponent
BConfigurationProperties
CService
DRepository
Attempts:
3 left
💡 Hint
Common Mistakes
Using @Component instead of @ConfigurationProperties
Forgetting to specify the prefix in the annotation
2fill in blank
medium

Complete the code to enable configuration properties scanning in the main application class.

Spring Boot
@SpringBootApplication
@[1](AppSettings.class)
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}
Drag options to blanks, or click blank then click option'
AEnableAutoConfiguration
BComponentScan
CEnableConfigurationProperties
DConfigurationPropertiesScan
Attempts:
3 left
💡 Hint
Common Mistakes
Using @ComponentScan instead of @EnableConfigurationProperties
Not specifying the class in the annotation
3fill in blank
hard

Fix the error in the configuration properties class by completing the missing annotation.

Spring Boot
public class DatabaseConfig {
    private String url;

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }
}

@[1]("database")
class DatabaseProperties extends DatabaseConfig {}
Drag options to blanks, or click blank then click option'
AConfigurationProperties
BComponent
CService
DRepository
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting to add @ConfigurationProperties
Using incorrect annotation like @Component
4fill in blank
hard

Fill both blanks to create a configuration properties class with a nested property and its getter.

Spring Boot
import org.springframework.boot.context.properties.ConfigurationProperties;

@[1]("server")
public class ServerProperties {
    private Security security = new Security();

    public Security getSecurity() {
        return [2];
    }

    public static class Security {
        private boolean enabled;

        public boolean isEnabled() {
            return enabled;
        }

        public void setEnabled(boolean enabled) {
            this.enabled = enabled;
        }
    }
}
Drag options to blanks, or click blank then click option'
AConfigurationProperties
BComponent
Csecurity
DsecurityProperties
Attempts:
3 left
💡 Hint
Common Mistakes
Using @Component instead of @ConfigurationProperties
Returning wrong field name in getter
5fill in blank
hard

Fill all three blanks to create a configuration properties class with a list property and its setter.

Spring Boot
import org.springframework.boot.context.properties.ConfigurationProperties;
import java.util.List;

@[1]("app")
public class AppConfig {
    private List<String> [2];

    public void set[3](List<String> values) {
        this.modules = values;
    }
}
Drag options to blanks, or click blank then click option'
AConfigurationProperties
Bmodules
CModules
Dcomponents
Attempts:
3 left
💡 Hint
Common Mistakes
Naming the setter method incorrectly
Using wrong field name for the list