我正在使用Play Framework 2.3.4,并尝试编写一个简单的隐式读取函数,该函数应该能够在json对象中获取任意数量的键,并生成一系列域对象。
例如,JSON可能如下所示:
{ "key1" : "value1", "key2" : "value2", ... "keyN" : "valueN" }
我有一个这样的域对象:
case class DomainObject(key: String, value: String)
我想使用Play JSON编写一些东西来生成Seq[DomainObject]。
所以在本例中,如果我们只有两个键,我会有两个DomainObjects的序列,第一个带有key=“key1”和value=“value1”,第二个带有key“key2”和value=“value2”
谢谢你的帮助。
也许有一种方法可以创建一个优秀的writer来实现这一点,但简单的解决方案是:
scala> val myJson = Json.parse("""{ "key1" : "value1", "key2" : "value2", "keyN" : "valueN" }""")
myJson: play.api.libs.json.JsValue = {"key1":"value1","key2":"value2","keyN":"valueN"}
scala> myJson.as[Map[String,String]] map {case (key, value) => DomainObject(key, value)}
res8: scala.collection.immutable.Iterable[DomainObject] = List(DomainObject(key1,value1), DomainObject(key2,value2), DomainObject(keyN,valueN))
你所需要做的不是构建一些复杂的writer,而是将其转换为映射[String,String](为此,你有现成的writer),然后将每个键值对映射到DomainObject。
你好,我是新来玩框架游戏的。在我的后端集群中,有基于SOAP的java Web服务在jetty服务器下运行。我正在使用play 2.1.2开发一个基于Web的应用程序,它应该调用在后端集群中运行的SOAP Web服务。 我在谷歌上搜索,找到了一些链接,但我看不出来http://playframework.wordpress.com/2010/08/15/web-services-using-pla
这些是以下类别: 在控制器文件中,我有以下文件 列表getQuestion()中的size()引发LazyInitializationException,因为没有打开的会话 我知道,将fetch类型更改为EAGER或在QuestionRepository中的函数定义上方使用JPQL查询可能会解决这个问题,但在我的应用程序中,有些地方没有帮助,我需要延迟fetch。 如何使get问题()函数中的整个
问题内容: 我正在尝试在数据库中保存一个简单的对象,但这给我带来了问题。 这是我的对象类: 这就是我的控制器中的内容: 我正在为其他模型做完全相同的事情,但是我没有任何问题,仅此一项给我带来了问题。当我刷新浏览器时,我得到: 我还添加了配置,在控制台中,我得到了: 浏览器也显示了这一点:但是我不知道在哪里可以查看我的日志,那么有人也可以告诉我吗? 问题答案: 是MySQL中的保留字,您需要按以下步
我无法用Intellij的Community Edition 14编译/调试当前的Play框架(2.3.7)。既不是通过导入项目,也不是通过使用gen-idea。
而是使用EventStream而不是ArchivedEventStream,当我运行命令alert(通知)消息时,会转到除原始发件人之外的所有连接套接字,我也可以如何发送到原始发件人。 这是我的模型和控制器,使用WebSocket 事件模型 这是控制器
Rest服务器(Play Framework)中的相关问题在负载测试期间出现“读取超时”异常 java版本“1.8.0_31”java(TM)SE运行时环境(Build1.8.0_31-B13)java HotSpot(TM)64位服务器VM(Build25.31-B07,混合模式) 我正在我的本地PC中测试jmeter。我使用了2000个线程,出现了超时异常,并且Socket不知为什么没有关闭。