播放2 - 在路径文件中访问conf属性

时间:2015-03-10 10:00:52

标签: java playframework routes playframework-2.0

在较旧版本的游戏中,我们可以在路由中编写以下代码,其中somevar在application.conf中定义

%{
    somevar = play.Play.configuration.getProperty("somevar")
 }%

 GET  /${somevar}  controllers........

所以我们可以在路由中访问somevar的值 任何人都可以帮我从application.conf

访问路由中的属性

1 个答案:

答案 0 :(得分:1)

首先,我认为从application.conf文件访问routes中的变量绝对没有任何好处。更改routes文件或.conf文件中路由值的区别是什么。在这两种情况下,您都需要更改值并重新启动服务器以使更改生效。什么是交易?

无论如何......这里去了!

<强>控制器:

public static Result getVersion(double var) {
    if (var != ConfigFactory.load().getDouble("version")) {
        return redirectTo();
    }
    return ok("version -> " + var);
}


public static Result redirectTo() {
    return redirect(controllers.routes.Application.getVersion(ConfigFactory.load().getDouble("version")));
}

<强>路线:

GET     /redirect               controllers.Application.redirectTo()
GET     /:v/get                 controllers.Application.getVersion(v: Double)

<强> application.conf:

version = 1.2

如果您尝试访问旧端点​​,您将始终被重定向到application.conf中指定的版本。