java - Play 2 - 访问路由文件中的 conf 属性

标签 java playframework routes playframework-2.0

在旧版本的 play 中,我们可以在 routes 中编写以下代码,并在 application.conf 中定义 somevar

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

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

所以我们可以在路由中访问 somevar 的值 谁能帮我从 application.conf 访问路由中的属性

最佳答案

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

无论如何……开始吧!

Controller :

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)

应用程序配置文件:

版本 = 1.2

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

关于java - Play 2 - 访问路由文件中的 conf 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28960724/

相关文章:

java - 输入文本时覆盖 Swing 文本标签

java - 同步调用锁定条件的 signalAll() 时出现 IllegalMonitorStateException

scala - 使用 Play 框架设置 Akka 集群

scala.reflect.internal.FatalError : package scala does not have a member Int

ruby-on-rails - Rails 路由没有 Controller 名称的短 URL

php - Cakephp 传递的参数

javascript - 向 ExpressJS app.use() 添加异常

java - 请求处理失败;嵌套异常是 org.springframework.dao.DataIntegrityViolationException : could not execute statement;

java - 如何在 Java 应用程序中获取电话号码?

java - 如何在play框架2.1中保存对象