在我的Grails应用程序中可以访问哪些Constants类?

gra*_*s0r 4 grails constants

我有一个简单的问题,但谷歌和stackoverflow结果根本不满足我.

如何定义Constants类,如:

public class Constants {
    public static final int SYSTEM_USER_ID = 1;
}
Run Code Online (Sandbox Code Playgroud)

这可以被称为处处Constants.SYSTEM_USER_ID

我试图在grails-app/utilssrc/java,但例如我不能一个服务类的内部访问.

Dón*_*nal 16

您可以考虑将这些常量放入Config.groovy而不是类中.此方法的一个优点是您可以为这些常量指定每个环境的值.您可以使用隐式grailsApplication变量或ConfigurationHolder类来读取这些值.

  • `ConfigurationHolder`是[已弃用](http://grails.github.io/grails-doc/2.0.1/api/org/codehaus/groovy/grails/commons/ConfigurationHolder.html),在Grails 3.0中配置文件是`CONF/application.yml`. (2认同)

Gam*_*mbo 6

您需要将Constants类放入包中.如果Grails不在包本身中,则无法找到该类.