【问题标题】:Scala Object Instantiotion on Run Time运行时的 Scala 对象实例化
【发布时间】:2014-09-12 11:58:03
【问题描述】:

我正在使用 Scala 和 Play 框架开发 API。当 API 接收到带有 JSON 的请求时,json 中的第一个值给出了将要创建对象的类的名称(这是接收到的 JSON 中的第二个值)。基本上我得到一个字符串值,可以说 MyClassName ,然后我必须创建一个已经在程序中定义的 MyClassName 对象。

这样做最简单/最干净的方法是什么?我想出的唯一解决方案是匹配/案例,但由于我有几十个类,这不是最好的方法。

【问题讨论】:

  • 你考虑过使用play-json playframework.com/documentation/2.2.x/ScalaJson吗?
  • @JhonnyEverson 对于解析是的,我使用 Json.format 和伴随对象来自动解析对象。
  • 例如:{"objectType": "MyObject", "myObjectConfiguratipn": "{//我的对象的所有字段值作为字符串中的转义 json 对象}"} 我的目标是转换这变成了一个myObject:MyObject @JhonnyEverson

标签: json scala parsing playframework


【解决方案1】:

如果类已经定义,并且值中定义的属性与类的名称匹配,则可以使用Class.forName

【讨论】:

  • 该函数将 $ 符号添加到类名。我正在寻找替代方案。 @JhonnyEverson
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-20
相关资源
最近更新 更多