av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

java - JSONField接收web提交的Json串,解析key

瀏覽:128日期:2023-11-20 09:38:27

問題描述

SpringMVC Controller接收頁面POST提交的JSON串,因為JSON串里面是帶“_”的全小寫,在java里面寫屬性的getter和setter實在太難看,所以就想到了用JSONField解析

//User類import com.alibaba.fastjson.annotation.JSONField;public class User{ @JSONField(name = 'user_name') private String userName; public String getUserName(){return this.userName; } public void setUserName(String userName){this.userName=userName; }}//Controller類@RequestMapping(value = '/insert_user',method = RequestMethod.POST)public String insertUser(@RequestBody User user){ System.out.println(user.getUserName()); return 'ok';}

但是在POST提交后沒有接收到啊,都是 null。后來用@SerializeName('user_name')還是不好使啊,請問這有解么,還是我的請求方式不對。。。。

問題解答

回答1:

spring mvc 默認的json轉換器是jackson,而你用的是fastjson中的@JSONField,所以不起作用。接下來你要做的就是替換掉默認的json轉換器,具體方法百度

回答2:

@RequestBody作用:

i) 該注解用于讀取Request請求的body部分數據,使用系統默認配置的HttpMessageConverter進行解析,然后把相應的數據綁定到要返回的對象上; ii) 再把HttpMessageConverter返回的對象數據綁定到 controller中方法的參數上。

使用時機:

A) GET、POST方式提時, 根據request header Content-Type的值來判斷:

application/x-www-form-urlencoded, 可選(即非必須,因為這種情況的數據@RequestParam, @ModelAttribute也可以處理,當然@RequestBody也能處理);multipart/form-data, 不能處理(即使用@RequestBody不能處理這種格式的數據);其他格式, 必須(其他格式包括application/json, application/xml等。這些格式的數據,必須使用@RequestBody來處理);

B) PUT方式提交時, 根據request header Content-Type的值來判斷:

application/x-www-form-urlencoded, 必須;multipart/form-data, 不能處理;其他格式, 必須;

說明:request的body部分的數據編碼格式由header部分的Content-Type指定;

標簽: java
主站蜘蛛池模板: 国产精品美女久久久久久久网站 | 日本成人福利视频 | 天堂色| www.玖玖玖 | 东京av男人的天堂 | 久久日本 | h视频免费在线观看 | 自拍偷拍3p | 天天搞天天操 | 午夜电影福利 | 亚洲 成人 在线 | 亚洲精品日韩精品 | 在线观看成人精品 | 91精品福利 | 国产精品一区二区视频 | 你懂的在线视频播放 | 日本精品一区二区三区视频 | 午夜视频在线播放 | 精品久久久久久亚洲精品 | 亚洲国产精品久久久久 | 亚洲一区二区三区四区视频 | 亚洲一区二区网站 | 羞羞网站免费观看 | 中文字幕一区二区三区乱码在线 | avav在线看 | 黄色片大全在线观看 | 亚洲一区二区三区免费 | 精品日本中文字幕 | 日韩欧美国产一区二区三区 | 欧美精品中文字幕久久二区 | 国产一区中文字幕 | 日韩国产中文字幕 | 欧美在线免费 | 欧美午夜一区 | 91麻豆精品国产91久久久久久久久 | 91成人精品 | 在线观看视频一区 | 日本不卡一区 | 国产精品久久久久久久午夜片 | av片网| 成人精品啪啪欧美成 |