play framework 中耍 JSON 基礎

2022-07-30 11:45:14 字數 1084 閱讀 9109

首先要知道有jsvalue

jsnumber, jsstring, jsobject, jsarray.. 都是 jsvalue的小孩(專業一點說extends from jsvalue trait)

json是工具類(object喔) josn.obj, json.arr, json.tojson

jspath 按字面上來說就是json的路徑相關的, 主要描述 key 而不是 value 就是橘色那

些字

}

jsobject 相當於乙個完整的tuple, object的意思是有lat和long這兩的屬性的物件

"location" :

jsnumber 就可以理解成 "long" : -1.309197, 我想其他的jsstring, jsarray..大家也就懂了

耍些工具, 耍之前不要忘了 import play.api.libs.json._

val jsonstring: jsstring = json.tojson("i can be jsstring")

val jsonnumber: jsnumber = json.tojson(100)

val jsonarrayofints = json.tojson(list(1,2,3))

val jsonemployee = json.tojson(new employee("henry")) //別想了, 哪有這麼好

json.tojson[t](t)(implicit writes: writes[t]) 用的這麼爽是因為有隱式引數,幫你轉換

來些code

case class employee(name: string)

implicit val employeewrites = new writes[employee] {

def writes(employee: employee) = json.obj(

"name" -> employee.name

val jsonemployee = json.tojson(new employee("henry")) //可以轉換了, 隱式會自動把employeewrites 當成writes引數

play framework中實現分頁

在playframework中實現分頁,我是採用了資料庫的fetch原理實現的。首先,在controllers中 public static void previouspage int startposition else showalluploads startposition public st...

playframework中多對多class

如有user和lesson兩個類,兩者屬於多對多的關係,寫法如 lesson中 屬於很多使用者 public listusers user中 有很多使用者課程 manytomany cascade cascadetype.all,targetentity models.lesson.class pu...

Play framework模板引擎 一

在controller中 renderargs.put client client 模板裡面就可以這樣寫 tags tag就是可以帶引數的模板碎片,如果tag只有乙個引數,預設名稱會叫做 arg arg的引數名稱可以忽略 例如 可以寫成 集合型別的用list tag 呵呵,有點懶了,其他的翻文件好了...