0
我使用playframework 2.1.0與Anorm來查詢數據庫。 我想要將結果序列化爲json而不經過任何臨時對象/案例類。Playframework任何向Json - usecase:anorm查詢結果給Json
這是流動的樣子: 使用ANORM:
DB.withConnection { implicit c =>
val q = SQL(""" long query goes here """)
q().toList
}
然後我拿這個結果和改造它一個列表[SqlRow]列出[地圖[字符串,任何]。 字符串,任何是列名,值(對象/不限)
val asMap = info.toList.map(row => scala.collection.immutable.Map(row.asMap.toSeq:_*))
的我想jsonize此。
我試過一些json庫:GSON,spray-json,playframework json lib。 但他們都沒有開箱即用。 我試圖用一些模式匹配來爲任何類型編寫隱式寫入器,但問題是這位作者總是超過所有其他寫入,所以json無法正確生成。
建議? 你會如何建議將Anorm的結果轉換爲Json?沒有任何臨時域模型。
我開始喜歡這個flexjson庫:)有了一些額外的scala map/list變形金剛註冊,你不需要將這個scala預轉換爲java類型。把所有這些放在一個返回JSonSerializer的「工廠」方法中,並且你有一個完整的可操作的簡單的json序列化程序,它可以工作! – samz 2013-04-29 15:06:49