groovy:如何访问属性文件?
发布时间:2020-12-14 16:39:39 所属栏目:大数据 来源:网络整理
导读:我有一个Groovy应用程序,我想以编程方式访问属性 在message.properties中定义。 作为一个测试,我试过以下: println "capacity.created " + ${message.properties['capacity.created']} 但它不工作(抛出异常)。 欢迎任何帮助 路易斯 解决方法 对于在Groovy
我有一个Groovy应用程序,我想以编程方式访问属性
在message.properties中定义。 作为一个测试,我试过以下: println "capacity.created " + ${message.properties['capacity.created']} 但它不工作(抛出异常)。 欢迎任何帮助 路易斯 解决方法
对于在Groovy中读取属性文件,可以使用实用程序类
ConfigSlurper并使用GPath表达式访问包含的属性。但是,您必须注意ConfigSlurper不支持标准的Java属性文件。通常,ConfigSlurper将用于读取可能与属性文件类似的.groovy文件,但遵循标准groovy表示法,因此字符串在引号内,注释以/或开头在/ * * /块中。因此,要读取Java属性文件,您需要创建一个java.util.Properties对象,并使用它来创建一个ConfigSlurper:
def props = new Properties() new File("message.properties").withInputStream { stream -> props.load(stream) } // accessing the property from Properties object using Groovy's map notation println "capacity.created=" + props["capacity.created"] def config = new ConfigSlurper().parse(props) // accessing the property from ConfigSlurper object using GPath expression println "capacity.created=" + config.capacity.created 如果只使用Groovy代码中的属性文件,则应直接使用Groovy记法变量。 def config = new ConfigSlurper().parse(new File("message.groovy").toURL()) 这也给你一些不错的优势,标准的属性文件,例如。代替 capacity.created="x" capacity.modified="y" 你可以写 capacity { created="x" modified="y" } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |