@ConfigurationProperties(prefix = "app.datasource") @Component public class DataSourceConfig {
private String url;
private String username;
private String password;
private int maxConnections;
// 省略getter和setter方法
}
@SpringBootApplication @EnableConfigurationProperties(DataSourceConfig.class) public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
// 配置类 @ConfigurationProperties(prefix = "datasource") public class DataSourceConfig {
private String url;
}
// application.yml data-source: # 错误的前缀 url: jdbc:mysql://localhost:3306/test
// 用户服务配置 @ConfigurationProperties(prefix = "user.service") @Component public class UserServiceConfig {
private int maxLoginAttempts;
private Duration sessionTimeout;
private List<String> allowedDomains;
}
// 数据库配置
@ConfigurationProperties(prefix = "database")
@Component
public class DatabaseConfig {
private String url;
private String username;
private PoolConfig pool;
// 内嵌配置类
public static class PoolConfig {
private int maxSize;
private int minSize;
}
}

