加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

grails中配置文件的读取[适用1.0RC1+]

发布时间:2020-12-14 17:06:42 所属栏目:大数据 来源:网络整理
导读:??grials中允许我们使用properties文件与groovy文件让开发人员自定义配置信息,我们平台现在只使用了properties,并且读取时是使用java的方式去读取,那样稍显复杂,其实可以通过如下方式配置与读取: ? ????? 我们的工程中主要使用的配置文件有: ????? Config.gr

??grials中允许我们使用properties文件与groovy文件让开发人员自定义配置信息,我们平台现在只使用了properties,并且读取时是使用java的方式去读取,那样稍显复杂,其实可以通过如下方式配置与读取:

?

????? 我们的工程中主要使用的配置文件有:

????? Config.groovy????????????????????????? (工程自动读取,我们并没有配置)

????? DataSource.groovy?????????????????? (工程自动读取,我们并没有配置)

????? gjunProperties.properties????????? (我们配置了数据连接信息)

????? StuDataIn.properties??????????????? (配置了学生批量导入与平台中使用的IP)

????? validate.properties??????????????????? (我写的一个验证器所需要的信息)

?

????? 现在我们自定义了一个通用方法去读取properties文件:ExtendMethodController.getBundleString(String bundelName,String itemString)

???

????? 其实我们可以在Config.groovy文件中设置平台使用的配置文件:

????? grails.config.locations = ["file:${System.properties['base.dir']}/grails-app/conf/gjunProperties.properties",
?????????????????????????? "file:${System.properties['base.dir']}/grails-app/conf/user/StuDataIn.properties",
?????????????????????????? "file:${System.properties['base.dir']}/grails-app/conf/user/validate.properties"
????????????????????????? ]

????? (Config.groovy与DataSource.groovy这两个文件不需要特别配置,系统会自动读取,配置后系统会把这三个文件设置为系统的配置文件)

?

??????读取的方法:

????? 一.读取Config.groovy中的内容.如我们在Config.groovy中配置了:

???????????? myConfig{

?????????????????? configString = "This is my config"

???????????? }

?

??????????读取的方法:

???????????? 1.grailsApplication.config.myConfig.configString

???????????? 2.先导入类:import org.codehaus.groovy.grails.commons.ConfigurationHolder

???????????????????? ConfigObject configObject = ConfigurationHolder.getConfig()

???????????????????? def dsConf = configObject.getProperty("myConfig")
??? ???????????????? println dsConf.configString

?

????? .读取properties文件,在properties文件中配置了:

???????????? propertiesConfig.configString = config string in properties file.

?

????????? 读取的方法:

???????????? 1.grailsApplication.config.propertiesConfig.configString

???????????? 2.先导入类:import org.codehaus.groovy.grails.commons.ConfigurationHolder

???????????????????? ConfigObject configObject = ConfigurationHolder.getConfig()

???????????????????? def dsConf = configObject.getProperty("propertiesConfig")
??? ???????????????? println dsConf.configString

?

?

?

?

????? 以下说明一下原因:

????? 在Config.groovy文件中设置了grails.config.locations,可以让grails知道设置的文件需要做为系统的配置文件,系统会把所有的配置项都加载到grailsApplication.config对应的ConfigObject对象中,便可以"."的方式读取配置项.

?

?

?

???? 如果不在Config.groovy文件中设置grails.config.locations,也可以读取groovy文件中的配置信息,但properties文件使用java读取的方式会简单些.

??? 不设grails.config.locations读取groovy文件:

??? def cs = new ConfigSlurper().parse(new java.io.File(System.properties["base.dir"]+"/grails-app/conf/user/gro.groovy").toURL())??? ?println cs.tests.name

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读