有时候有这样的情景,想把配置文件的信息,读取并自动封装成实体类,这样在代码里使用就方便多了,这时候,我们就可以使用@ConfigurationProperties
,它可以把同类的配置信息自动封装成实体类
首先配置文件
这时候我们可以定义一个实体类在装载配置文件信息
还可以把@ConfigurationProperties
直接定义在@bean
注解上,这时bean实体类就不用@Component和@ConfigurationProperties了
@RestController
@RequestMapping("/task")
public class TaskController {
@Autowired ConnectionSettings conn;
@RequestMapping(value = {"/",""})
public String hellTask(){
String userName = conn.getUsername();
return "hello task !!";
}
}
如果发现@ConfigurationPropertie
不生效,有可能是项目的目录结构问题,你可以通过@EnableConfigurationProperties(ConnectionSettings.class)
来明确指定需要用哪个实体类来装载配置信息。
网友评论