我已经扩展了 GlobalSettings 类,如教程中所示 Application global settings .
然后如何访问此类的实例,比方说从 View 方法? 我假设在应用程序启动时创建了一个实例,并且它可能是某个对象的成员。
例如,我希望在这里找到它:
Play.application().getGlobalSettings()
或类似的东西,但我在 Play.* 层次结构中找不到它。
有什么想法吗? 谢谢。
最佳答案
我是 Play 2.0 的新手,但是,我认为使用插件注入(inject)会更好。检查一下:
https://github.com/typesafehub/play-plugins/tree/master/inject
使用这种方法,您只需将以下行添加到您的 Controller (以及一些其他配置,如上面链接中所述):
@Inject static MyStaticObj obj;
其余的都是使用注入(inject)框架自动完成的。无需担心全局等。
也就是说,在发现插件注入(inject)框架之前,我和你一样花了很多时间试图弄清楚如何为此使用 GlobalSettings 对象。
我的感觉是,考虑到 Global 的实现方式(作为默认/未命名包中的类),不可能在应用程序代码中的任何地方引用它。我不确定这是有意为之还是偶然(似乎这些天 Play 的人都在考虑 Scala……)。幸运的是,插件方法似乎是处理这些共享全局变量的更好方法。
关于java - 访问游戏中的全局对象! 2.0 与 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10238005/