运维开发网

t配置文件属性变量引用方法区别

运维开发网 https://www.qedev.com 2022-05-24 15:41 出处:网络
这篇文章主要介绍了springboot配置文件属性变量引用方式${}和@@用法及区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

这篇文章主要介绍了springboot配置文件属性变量引用方式${}和@@用法及区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教


配置文件属性变量引用${}和@@用法

$ {}和@ @都是springboot引用属性变量的方式。

具体区别和用法:


${}常用于pom.xml

以及src/main/resources/application . properties等。

语法是:字段名称= $ {字段值}

pom.xml的示例:

lt;propertiesgt;? ? lt;dubbo.versiongt;2.7.0lt;/dubbo.versiongt;lt;/propertiesgt;??lt;dependenciesgt;? ? ?lt;dependencygt;? ? ? ? ?lt;groupIdgt;org.apache.dubbolt;/groupIdgt;? ? ? ? ? lt;artifactIdgt;dubbolt;/artifactIdgt;? ? ? ? ? lt;versiongt;${dubbo.version}lt;/versiongt;? ? ?lt;/dependencygt;?lt;/dependenciesgt;

application.properties示例:

#logback日志配置log.config.address=classpath:config/logback-spring.xmllogging.config=${log.config.address}


@@方式常用于引用springboot非默认配置文件

springboot会生成其他配置文件(即其他配置文件)中的变量来替换$ {}属性占位符。原因是${ }会被maven处理,所以引用非默认配置文件时不能用来引用变量。

语法是:字段名称= @字段值@

示例:

在实际的项目开发中,为了在不同的环境下进行测试,我们会在src/main/resources目录下创建一个config文件夹,并在config中创建多个属性文件。

例如:

Local.properties,development.properties,production.properties .当我们引用src/main/resources/config/local . properties在src/main/resources/application . properties文件中的属性变量时,就要用到@ @方法。

#端口配置server.port=@server.port.web@?#logback日志配置logging.config=@logging.config@


配置文件中的ldquo;@rdquo;问题


springboot配置文件中的${hellip;}和@hellip;@

在springboot的配置文件中,即application.properties或application.yml

$ {}最适合用于获取springboot配置文件配置的值

@ @引用其他文件(除了springboot配置文件,如pom.xml)中定义的值,并使用@ @


起因

从git中取出代码,更改数据库配置并开始运行。

错误报告:

找到字符# 39;@#39;不能启动任何令牌。(不要使用@表示缩进)
in # 39;读者# 39;,34行,19列:
密码:@spring.redis.password@


不,正常情况下,这里应该没有错误。


原因

我的猜测是,有时候编的不全。当我看到编译后的文件中的内容不是从pom.xml文件中读取的数据时,很明显这一块没有编译。



解决

在侧边栏中打开maven,点击图中的两个按钮刷新下一项。再次开始完美的操作。如果还是不行,那就清空缓存刷新吧。


以上个人经验,希望能给你一个参考,也希望你能支持一下

0

精彩评论

暂无评论...
验证码 换一张
取 消