如何读取 Micronaut 中的应用程序属性?

2024-01-31

我使用指南将 AWS SES API 集成到我的 Micronaut Groovy 应用程序中在 micronaut 中发送邮件 http://guides.micronaut.io/micronaut-email-groovy/guide/index.html如果我直接为属性赋值,我就可以发送邮件。

我想让它配置驱动,因此一直在努力寻找实现这一目标的方法。

我尝试了指南中提到的 @Value 注释,但无法使其工作。

@Value("aws.secretkeyid")
String keyId

进一步深入研究文档发现,Micronaut 有自己的注释,用于在变量中注入属性。

@Property(name="aws.secretkeyid")
String keyId

但似乎没有任何作用,我的变量仍然为空。

这里可能出了什么问题?

作为参考,以下位于我的 application.yml 文件中

aws:
  keyid: "2weadasdwda"
  secretkeyid: "abcdesdasdsddddd"
  region: "us-east-1"

您使用不正确,您正在注入文字值aws.secretkeyid,而不是变量的值。

正确的语法是(Groovy):

@Value('${aws.secretkeyid}')
String keyId

请注意,您必须使用单引号以避免 Groovy 尝试插值

Java:

@Value("${aws.secretkeyid}")
String keyId;

Kotlin:

@Value("\${aws.secretkeyid}")
keyId: String

请注意,您必须使用反斜杠转义美元符号以避免 Kotlin 字符串模板

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何读取 Micronaut 中的应用程序属性? 的相关文章

随机推荐