国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
SpringMVC中出現(xiàn)“ 400 Bad Request ”錯誤(用@ResponseBody處理ajax傳過來的json數(shù)據(jù)轉(zhuǎn)成bean)的解決方法

        今天開發(fā)過程中,在SpringMVC中的Action中處理前臺ajax請求傳過來的json數(shù)據(jù)直接轉(zhuǎn)成對應(yīng)的實體類時出錯:400 Bad Request,后臺也不報錯,400指的的是請求無效(請求有語法問題或者不能滿足請求),調(diào)試了好長時間才解決了,特意記錄下來,并和大家一同分享一下。

        出現(xiàn)這個錯誤的原因一般最常見的就是后臺的實體類bean與前臺穿過的類型不匹配,我的就是,因為的javabean中有定義了Date類型和int類型的成員變量,導(dǎo)致轉(zhuǎn)化器在把json數(shù)據(jù)轉(zhuǎn)化成bean時不能轉(zhuǎn)化,其實如果用JSONObject.toBean方法轉(zhuǎn)化時,這種情況也會報錯的。

       1、我的解決辦法就是把實體類的javabean里邊的類型都改成string類型了,在配置SQL語句時用數(shù)據(jù)庫函數(shù)to_date或者to_number轉(zhuǎn)化的,如果再Java中用到這個字符串類型的日期的話,有必要的話,就用For format=new SimpleDateFormat("yyyy-MM-dd"),format.parse()來轉(zhuǎn)換。

       2、其實還可以在實體類中定義Date和int類型對應(yīng)的字符串類型成員變量,這樣前臺的表單中field或者name與之對應(yīng)上即可,這樣也成功轉(zhuǎn)成實體類了,不過轉(zhuǎn)成之后,得在java中把它字符串類型的轉(zhuǎn)成對應(yīng)的Date或者int類型賦給相應(yīng)的成員變量即可。

       3、在就是還有一種方法就是在對應(yīng)的實體類的對應(yīng)的非字符串類型的變量的setter方法中傳入string類型的,然后在里邊用SimpleDateFormat或者Integer進行轉(zhuǎn)化。

       4、最后還有一種方法,就是實體類的日期屬性上加@DateTimeFormat(pattern="yyyy-MM-dd")注解,大部分是可以成功使用的。如果這種方法不可用的話,你看繼續(xù)嘗試如下方法:不過這個前提是前臺穿過的日期為json形式而非字符串形式,如前臺類似$("#id").val()來獲取日期直接傳給后臺的話是不行的,你需要在前臺引入JSON官網(wǎng)的json.js庫或者引入jQueryjquery.json-2.4.js庫,然后如果是前者的話就new Date(stringDate).parseJSON()來轉(zhuǎn)化再傳給后臺,如果是后者的話,$.toJSON(new Date(stringdate))來傳給后臺,這種方式比較麻煩,有網(wǎng)友留言特意討論了一下這個問題,所以建議采用第一種方式。

       如果你有更好的更優(yōu)秀的方式解決這種問題,還請您手下留情,留下您的寶貴意見,以使大家共同的學(xué)習(xí)和成長。

       網(wǎng)上我看了一些有關(guān)問題,看網(wǎng)友們還有一些其他原因?qū)е逻@個錯誤的,特總結(jié)歸納了一下方便網(wǎng)友們參考:

(1)log4j的配置文件里錯誤將部分log打為Info級別所致
(2)傳參數(shù)的時候,參數(shù)名使用了關(guān)鍵字“name”(我試了試,我的沒報錯正常)
(3)本來要返回json的卻忘了加@RequestBody
(4)ajax請求的連接后邊忘了加參數(shù)

(5)前臺傳參時參數(shù)的順序與后臺實體類的各個屬性的順序不一致(我試了試,我的順序改變無影響)

(6)如果是傳了非實體bean屬性的參數(shù)過來也會發(fā)生這種情況

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
JFinal ajax 傳參數(shù) 后臺接收 Json 返回
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服