从文件中读取Grails Config.groovy文件

时间:2012-04-03 18:09:28

标签: grails

这样做的最佳做法是什么?基本上我使用的是RabbitMQ,它有多少并发进程的设置,我将WAR部署到测试服务器,并希望通过简单地更改值并避免每次都生成新的WAR文件来优化此数量的并发。

我正在考虑读取属性文件,我只能更改值并重新启动服务器?

例如:在我的config.groovy文件中

rabbitmq {
    connectionfactory {
        username = 'groovy'
        password = 'groovy'
        hostname = 'localhost'

    }
    queues = {
        processTerritory exclusive: true
    }
    concurrentConsumers = **READ INTEGER VALUE FROM A FILE**
}

1 个答案:

答案 0 :(得分:2)

您可以从Config.groovy导入外部配置文件。 Config.groovy中已经注释掉了代码,显示了如何执行此操作:

grails.config.locations = [ "classpath:${appName}-config.properties",
                         "classpath:${appName}-config.groovy"]

假设您的应用程序名称为foo,您现在可以在类路径的某处放置foo-config.groovy或foo-config.properties。对于Tomcat,您可以将文件放在lib文件夹中。

user documentation

也涵盖了这一点

然后,在foo-config.groovy中你可以输入:

rabbitmq.concurrentConsumers = 10

或任何适合该服务器的值。

Grails 3

Grails 3默认不包含此功能,但您可以使用external-config plugin