我写了一个电子邮件程序。但我不得不改变一些配置,所以在我的项目中,我需要知道如何从yaml读取我的loginUrl
下面的代码;
userNotificationEmail.setIsActive("F");
userNotificationEmailRepository.save(userNotificationEmail);
activationResultType.setResultCode(ActivationResultCode.SUCCESSFUL);
activationResultType.setUser(userMapper.fromUser(userEntity));
activationResultType.setLoginUrl(loginUrl);
return activationResultType;
3条答案
按热度按时间ohfgkhjo1#
如果你的键是
loginUrl
(在yaml文件中),你可以在Spring组件中用@Value
注解注入它的值。如果是二级属性,路径为
@Value("${yourFirstKey.loginUrl}")
。更多关于使用Sping Boot 阅读YAML文件的文档。
rdlzhqv92#
你可以像下面这样在你的类中使用@Value来注入值。
你仍然无法获得价值…也考虑下面的情况。
YML文件:
使用
@Value("${authorization.server.base-uri}")
而不是@Value("${authorization.server.baseUri}")
获取控制器内部的YML值。根据spring文档,此处需要注意的关键点
如果您确实想使用@Value,我们建议您使用规范形式(仅使用小写字母的kebab-case)引用属性名称。这将允许Sping Boot 使用与放松绑定@ConfigurationProperties时相同的逻辑。例如,@Value(“{demo.item-price}”)将从www.example.com文件中获取demo.item-price和demo.itemPrice表单application.properties,以及从系统环境中获取DEMO_ITEMPRICE。如果使用@Value(“{demo.itemPrice}”),则不会考虑demo.item-price和DEMO_ITEMPRICE。
0md85ypi3#
你可以在你的类中注入: