文章目录
前言
一、Groovy 配置文件格式
二、Groovy 配置文件读取
二、完整配置文件及解析代码示例
前言
在 Groovy 脚本 , Groovy 类 , Java 类中 , 可以调用 Groovy 脚本 ;
一、Groovy 配置文件格式
Groovy 中的配置文件 , 也是定义在 " .groovy " 脚本中的 ;
下面的写法 ,
student { name = "Tom" }
与
student.name = "Tom"
用法相同 ;
同时在每个节点下 , 还可以创建子节点 , 子节点下配置键值对 ;
student { name = "Tom" home{ address = "Beijing" } }
二、Groovy 配置文件读取
Groovy 配置文件读取 , 创建 ConfigSlurper 对象 , 使用 parse 方法 , 解析指定的配置文件 , 注入传入的是 URL 对象 ;
// 解析 Config.groovy 配置文件 def config = new ConfigSlurper() .parse( new File("Config.groovy") .toURI() .toURL() )
之后可以使用 config.节点名称.键 的形式 , 读取配置文件 ;
如使用 config.student.name 形式 , 读取 student 下的 name 属性配置 ;
代码示例 :
// 解析 Config.groovy 配置文件 def config = new ConfigSlurper() .parse( new File("Config.groovy") .toURI() .toURL() ) // 打印 student 整个配置 println "student : " + config.student
二、完整配置文件及解析代码示例
配置文件 :
student { name = "Tom" age = 18 school { address = "Beijing" name = "School" } home{ address = "Beijing" } }
解析配置文件代码示例 :
// 解析 Config.groovy 配置文件 def config = new ConfigSlurper() .parse( new File("Config.groovy") .toURI() .toURL() ) // 打印 student 整个配置 println "student : " + config.student // 打印 student 下的 name 和 age 配置 println "student.name : ${config.student.name} , student.age : ${config.student.age}" // 打印 student 下的 school 和 home 节点配置 println "student.school : " + config.student.school + " , student.home : " + config.student.home // 打印 student 下 school 下的 address 和 name 属性 println "student.school.address : " + config.student.school.address + " , student.school.name : " + config.student.school.name
执行结果 :
student : [name:Tom, age:18, school:[address:Beijing, name:School], home:[address:Beijing]] student.name : Tom , student.age : 18 student.school : [address:Beijing, name:School] , student.home : [address:Beijing] student.school.address : Beijing , student.school.name : School