最近在乙個專案中,在組裝資訊給對方傳送json字串的時候,對方要字元key總是大寫開頭的,而用標準的
body = jsonobject.tojsonstring(enterpriseinfodto);
body = json.tojsonstring(enterpriseinfodto);
輸出的時候,就算我們的屬性定義是大寫開頭,但是經過fastjson轉換之後,它也會是小寫開頭。
所以我們需要指定轉換為json的時候,對應的key的值為大寫。
需要使用@jsonfield註解。
@jsonfield(name = "authtime")
public string getauthtime()
一、作用field (相當於get set的總和)
@jsonfield作用在field時,其name不僅定義了輸入key的名稱,同時也定義了輸出的名稱。
二、作用在setter和getter方法上
顧名思義,當作用在setter方法上時,就相當於根據 name 到 json中尋找對應的值,並呼叫該setter物件賦值。
當作用在getter上時,在bean轉換為json時,其key值為name定義的值。例項如下:
import com.alibaba.fastjson.jsonobject;
import com.alibaba.fastjson.annotation.jsonfield;
public class jsonfieldtest
public void setname(string name)
@jsonfield(name = "jsonage")
public string getage()
public void setage(string age)
public string getemail()
@jsonfield(name = "jsonemail")
public void setemail(string email)
@override
public string tostring()
public static void main(string args) }
}
fastjson中 jsonType註解的使用
1.jsontype的使用 jsontype includes jsontype ignores 放在實體類中就會只裝配列舉的字段,2.jsonfield的使用 放在實體類中的某個字段上面 protected class h5payconfig 上面兩個註解主要區別就是乙個是在實體類上面,還有乙個是...
fastjson簡單使用
fastjson 是阿里巴巴的開源專案 主要是操作json 與 自定義物件,map,list之間進行的轉換 以下給出了 6種轉換 都是我自己封裝的 一點渣水平,封裝的 方法可以直接拿去用 我都已經測試過的 1.json 轉換 自定義物件 string json user user json.pars...
FastJson亂序問題
jsonobject jsonordered new jsonobject true 2 將string物件轉換過程中,不要調整順序 jsonobject jsonordered jsonobject.parseobject jsonstring,feature.orderedfield 3 物件序...