版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第java中如何判斷JSONObject是否存在某個(gè)Key目錄判斷JSONObject是否存在某個(gè)Key檢查json字符串中是否存在該key下面介紹我自己的情況
判斷JSONObject是否存在某個(gè)Key
JSONObjectjsonObj=newJSONObject();
jsonObj.put("version","1.0.0");//版本號
jsonObj.put("encoding","UTF-8");//編碼方式
判斷jsonObject是否存在vesion屬性
jsonObj.has("version");
//返回true
檢查json字符串中是否存在該key
初衷,是由于工作需要,兩個(gè)單位需要接口數(shù)據(jù)對接,單位一需要發(fā)送json數(shù)據(jù)串到單位二,然而單位一發(fā)送的json數(shù)據(jù)中的字段不確定,聽他們解釋說,客戶在系統(tǒng)上輸那些字段,他們就會把那些字段帶過來,然后那些客戶不輸入的字段,他們就會默認(rèn)不帶。單位一要求單位二,將這種檢測出不帶的字段默認(rèn)值為空!
所以作為單位二,我們就需要想辦法檢測到單位一哪些字段沒帶過來。起初立馬想到的辦法就是用異常情況處理,因?yàn)槌绦虮旧頊y試的時(shí)候就報(bào)notfound了,所以用異常處理情有可原吧。。。如果用異常的,想了一下只能捕捉到notfound之后,在finally里將捕捉到的這個(gè)字段直接置空就ok了。
那么問題來了,對異常的情況試了一下,finally太多不好處理;所以就想了用另外一個(gè)方法,用json的一個(gè)containsKey()函數(shù)來判斷json串中是否存在這個(gè)key,即是否存在這個(gè)字段;當(dāng)然,還有其他函數(shù)也可以判斷的,這個(gè)根據(jù)自己引入的json包了。
下面介紹我自己的情況
導(dǎo)入的jar包為:
首先我導(dǎo)入的json包:
importnet.sf.json.JSONArray;
importnet.sf.json.JSONObject;
代碼如下:
/**
*9903接口解析json數(shù)據(jù)并且將數(shù)據(jù)進(jìn)行入庫
*@authorsyp
*@time2025年7月3日11:49:02
publicStringdateRepository(StringjsonData){
Log4jB("開始處理入庫程序!");
ReadConfig.PullConfigXml();//啟動配置文件
DBUtilsdb=newDBUtils();
JSONObjectjson=newJSONObject();
StringjsonStr=jsonData.substring(44,jsonData.length());
JSONObjectjsonObject=JSONObject.fromObject(jsonStr);
JSONObjectjsonCard=jsonObject.getJSONObject("cardid_info")
JSONObjectjsonObu=jsonObject.getJSONObject("obu_info");
JSONObjectjsonUser=jsonObject.getJSONObject("user_info");
JSONObjectjsonCar=jsonObject.getJSONObject("car_info");
//準(zhǔn)備將所有json數(shù)據(jù)信息入開卡集合表ETC_OPEN_CARD_COLLECTION
JSONObjectjsonAccno=jsonObject.getJSONObject("accno_info");
StringallSql="insertintoETC_OPEN_CARD_COLLECTION(ACCOUNTID,LINKMOBILE,ACCNO_USERNAME,CERTSN,POSID,GENTIME,TRX_SERNO,EMPLOYEEID,ORG_TRX_SERNO,CARD_ID,CARDTYPE,CARD_BRAND,CARD_MODEL,AGENCYID,CARD_USERID,VEHICLEID,ENABLETIME,EXPIRETIME,ISSUEDTYPE,CHANNELID,ISSUEDTIME,CARD_STATUS,STATUSCHANGETIME,CARD_OPERATION,OBU_ID,OBU_BRAND,OBU_MODEL,OBU_USERID,OBU_VEHICLEID,OBU_ENABLETIME,OBU_EXPIRETIME,REGISTEREDTYPE,REGISTEREDCHANNELID,REGISTEREDTIME,INSTALLTYPE,INSTALLCHANNELID,INSTALLTIME,OBU_STATUS,OBU_STATUSCHANGETIME,OBU_OPERATION,USER_ID,USERTYPE,USER_NAME,USERIDTYPE,USERIDNUM,USER_TEL,USER_ADDRESS,USER_REGISTEREDTYPE,USER_CHANNELID,USER_REGISTEREDTIME,DEPARTMENT,AGENTNAME,AGENTIDTYPE,AGENTIDNUM,USER_STATUS,USER_STATUSCHANGETIME,USER_OPERATION,CAR_ID,CAR_TYPE,CAR_USERID,OWNERNAME,OWNERIDTYPE,OWNERIDNUM,OWNERTEL,CAR_ADDRESS,CAR_CONTACT,CAR_REGISTEREDTYPE,CAR_CHANNELID,CAR_REGISTEREDTIME,VEHICLETYPE,VEHICLEMODEL,USECHARACTER,VIN,ENGINENUM,REGISTERDATE,ISSUEDATE,FILENUM,APPROVEDCOUNT,TOTALMASS,MAINTENANCEMASS,PERMITTEDWEIGHT,OUTSIDEDIMENSIONS,PERMITTEDTOWWEIGHT,TESTRECORD,WHEELCOUNT,AXLECOUNT,AXLEDISTANCE,AXISTYPE,CAR_OPERATION)values('"
+(jsonAccno.containsKey("accountid")jsonAccno.getString("accountid"):"")
+"','"
+(jsonAccno.containsKey("linkmobile")jsonAccno.getString("linkmobile"):"")
+"','"
+(jsonAccno.containsKey("username")jsonAccno.getString("username"):"")
+"','"
+(jsonAccno.containsKey("certsn")jsonAccno.getString("certsn"):"")
+"','"
+(jsonAccno.containsKey("posid")jsonAccno.getString("posid"):"")
+"','"
+(jsonAccno.containsKey("gentime")jsonAccno.getString("gentime"):"")
+"','"
+(jsonAccno.containsKey("trx_serno")jsonAccno.getString("trx_serno"):"")
+"','"
+(jsonAccno.containsKey("employeeid")jsonAccno.getString("employeeid"):"")
+"','"
+(jsonAccno.containsKey("org_trx_serno")jsonAccno.getString("org_trx_serno"):"")
+"','"
+(jsonCard.containsKey("id")jsonCard.getString("id"):"")
+"','"
+(jsonCard.containsKey("cardType")jsonCard.getString("cardType"):"")
+"','"
+(jsonCard.containsKey("brand")jsonCard.getString("brand"):"")
+"','"
+(jsonCard.containsKey("model")jsonCard.getString("model"):"")
+"','"
+(jsonCard.containsKey("agencyId")jsonCard.getString("agencyId"):"")
+"','"
+(jsonCard.containsKey("userId")jsonCard.getString("userId"):"")
+"','"
+(jsonCard.containsKey("vehicleId")jsonCard.getString("vehicleId"):"")
+"','"
+(jsonCard.containsKey("enableTime")jsonCard.getString("enableTime"):"")
+"','"
+(jsonCard.containsKey("expireTime")jsonCard.getString("expireTime"):"")
+"','"
+(jsonCard.containsKey("issuedType")jsonCard.getString("issuedType"):"")
+"','"
+(jsonCard.containsKey("channelId")jsonCard.getString("channelId"):"")
+"','"
+(jsonCard.containsKey("issuedTime")jsonCard.getString("issuedTime"):"")
+"','"
+(jsonCard.containsKey("status")jsonCard.getString("status"):"")
+"','"
+(jsonCard.containsKey("statusChangeTime")jsonCard.getString("statusChangeTime"):"")
+"','"
+(jsonCard.containsKey("operation")jsonCard.getString("operation"):"")
+"','"
+(jsonObu.containsKey("id")jsonObu.getString("id"):"")
+"','"
+(jsonObu.containsKey("brand")jsonObu.getString("brand"):"")
+"','"
+(jsonObu.containsKey("model")jsonObu.getString("model"):"")
+"','"
+(jsonObu.containsKey("userId")jsonObu.getString("userId"):"")
+"','"
+(jsonObu.containsKey("vehicleId")jsonObu.getString("vehicleId"):"")
+"','"
+(jsonObu.containsKey("enableTime")jsonObu.getString("enableTime"):"")
+"','"
+(jsonObu.containsKey("expireTime")jsonObu.getString("expireTime"):"")
+"','"
+(jsonObu.containsKey("registeredType")jsonObu.getString("registeredType"):"")
+"','"
+(jsonObu.containsKey("registeredChannelId")jsonObu.getString("registeredChannelId"):"")
+"','"
+(jsonObu.containsKey("registeredTime")jsonObu.getString("registeredTime"):"")
+"','"
+(jsonObu.containsKey("installType")jsonObu.getString("installType"):"")
+"','"
+(jsonObu.containsKey("installChannelId")jsonObu.getString("installChannelId"):"")
+"','"
+(jsonObu.containsKey("installTime")jsonObu.getString("installTime"):"")
+"','"
+(jsonObu.containsKey("status")jsonObu.getString("status"):"")
+"','"
+(jsonObu.containsKey("statusChangeTime")jsonObu.getString("statusChangeTime"):"")
+"','"
+(jsonObu.containsKey("operation")jsonObu.getString("operation"):"")
+"','"
+(jsonUser.containsKey("id")jsonUser.getString("id"):"")
+"','"
+(jsonUser.containsKey("userType")jsonUser.getString("userType"):"")
+"','"
+(jsonUser.containsKey("userName")jsonUser.getString("userName"):"")
+"','"
+(jsonUser.containsKey("userIdType")jsonUser.getString("userIdType"):"")
+"','"
+(jsonUser.containsKey("userIdNum")jsonUser.getString("userIdNum"):"")
+"','"
+(jsonUser.containsKey("tel")jsonUser.getString("tel"):"")
+"','"
+(jsonUser.containsKey("address")jsonUser.getString("address"):"")
+"','"
+(jsonUser.containsKey("registeredType")jsonUser.getString("registeredType"):"")
+"','"
+(jsonUser.containsKey("channelId")jsonUser.getString("channelId"):"")
+"','"
+(jsonUser.containsKey("registeredTime")jsonUser.getString("registeredTime"):"")
+"','"
+(jsonUser.containsKey("department")jsonUser.getString("department"):"")
+"','"
+(jsonUser.containsKey("agentName")jsonUser.getString("agentName"):"")
+"','"
+(jsonUser.containsKey("agentIdType")jsonUser.getString("agentIdType"):"")
+"','"
+(jsonUser.containsKey("agentIdNum")jsonUser.getString("agentIdNum"):"")
+"','"
+(jsonUser.containsKey("status")jsonUser.getString("status"):"")
+"','"
+(jsonUser.containsKey("statusChangeTime")jsonUser.getString("statusChangeTime"):"")
+"','"
+(jsonUser.containsKey("operation")jsonUser.getString("operation"):"")
+"','"
+(jsonCar.containsKey("id")jsonCar.getString("id"):"")
+"','"
+(jsonCar.containsKey("type")jsonCar.getString("type"):"")
+"','"
+(jsonCar.containsKey("userId")jsonCar.getString("userId"):"")
+"','"+
(jsonCar.containsKey("ownerName")jsonCar.getString("ownerName"):"")
+"','"+
(jsonCar.containsKey("ownerIdType")jsonCar.getString("ownerIdType"):"")
+"','"+
(jsonCar.containsKey("ownerIdNum")jsonCar.getString("ownerIdNum"):"")
+"','"+
(jsonCar.containsKey("ownerTel")jsonCar.getString("ownerTel"):"")
+"','"+
(jsonCar.containsKey("address")jsonCar.getString("address"):"")
+"','"+
(jsonCar.containsKey("contact")jsonCar.getString("contact"):"")
+"','"+
(jsonCar.containsKey("registeredType")jsonCar.getString("registeredType"):"")
+"','"+
(jsonCar.containsKey("channelId")jsonCar.getString("channelId"):"")
+"','"+
(jsonCar.containsKey("registeredTime")jsonCar.getString("registeredTime"):"")
+"','"+
(jsonCar.containsKey("vehicleType")jsonCar.getString("vehicleType"):"")
+"','"+
(jsonCar.containsKey("vehicleModel")jsonCar.getString("vehicleModel"):"")
+"','"+
(jsonCar.containsKey("useCharacter")jsonCar.getString("useCharacter"):"")
+"','"+
(jsonCar.containsKey("VIN")jsonCar.getString("VIN"):"")
+"','"+
(jsonCar.containsKey("engineNum")jsonCar.getString("engineNum"):"")
+"','"+
(jsonCar.containsKey("registerDate")jsonCar.getString("registerDate"):"")
+"','"+
(jsonCar.containsKey("issueDate")jsonCar.getString("issueDate"):"")
+"','"+
(jsonCar.containsKey("fileNum")jsonCar.getString("fileNum"):"")
+"','"+
(jsonCar.containsKey("approvedCount")jsonCar.getString("approvedCount"):"")
+"','"+
(jsonCar.containsKey("totalMass")jsonCar.getString("totalMass"):"")
+"','"+
(jsonCar.containsKey("maintenanceMass")jsonCar.getString("maintenanceMass"):"")
+"','"+
(jsonCar.containsKey("permittedWeight")jsonCar.getString("permittedWeight"):"")
+"','"+
(jsonCar.containsKey("outsideDimensions")jsonCar.getString("outsideDimen
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年環(huán)境評估(土壤環(huán)境質(zhì)量評估)試題及答案
- 2025年中職(醫(yī)學(xué)檢驗(yàn))血常規(guī)檢測實(shí)務(wù)綜合測試題及答案
- 2025年大學(xué)(測繪科學(xué)與技術(shù)專業(yè))地理信息系統(tǒng)基礎(chǔ)試題及答案
- 2025年大學(xué)第四學(xué)年(工程項(xiàng)目融資)融資方案設(shè)計(jì)階段測試題及答案
- 2025年大學(xué)美術(shù)學(xué)(美術(shù)學(xué)概論)試題及答案
- 2025年大學(xué)安全教育(交通安全知識)試題及答案
- 2025年中職(市場開發(fā)實(shí)務(wù))客戶開發(fā)流程階段測試試題及答案
- 2025年中職船舶工程技術(shù)(船舶建造工藝)試題及答案
- 2025年中職道路橋梁工程技術(shù)(路橋施工技術(shù))試題及答案
- 2025年大學(xué)臨床醫(yī)學(xué)(臨床診療技術(shù))試題及答案
- LY/T 3408-2024林下經(jīng)濟(jì)術(shù)語
- 2025年湖南邵陽市新邵縣經(jīng)濟(jì)開發(fā)區(qū)建設(shè)有限公司招聘筆試參考題庫附帶答案詳解
- ICH《M10:生物分析方法驗(yàn)證及樣品分析》
- 國家開放大學(xué)電大24210丨學(xué)前兒童科學(xué)教育活動指導(dǎo)(統(tǒng)設(shè)課)期末終考題庫
- 【讀后續(xù)寫】2021年11月稽陽聯(lián)考讀后續(xù)寫講評:Saving the Daisies 名師課件-陳星可
- 教育培訓(xùn)班項(xiàng)目可行性研究報(bào)告
- 人參健康食品營銷策劃
- 2024年人參項(xiàng)目營銷策劃方案
- 工會職工大會制度實(shí)施細(xì)則范本
- ups拆除施工方案
- GB/T 21196.4-2007紡織品馬丁代爾法織物耐磨性的測定第4部分:外觀變化的評定
評論
0/150
提交評論