久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

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

瀏覽:120日期: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
主站蜘蛛池模板: 亚洲人成在线播放 | 亚洲va中文字幕 | 天堂影院一区二区 | 在线播放国产精品 | 亚洲成人日韩 | 玖草在线视频 | 欧美久久久久久久久久久久久久 | 日韩在线播 | 成人免费在线视频 | 2020亚洲视频 | 午夜影院在线 | 精品一区二区av | 玖草资源 | 国产一区二区三区91 | 福利网站在线观看 | 九九综合九九 | 亚洲日韩中文字幕一区 | 欧美狠狠操 | 日韩在线视频免费 | 国产成人精品免高潮在线观看 | 黄色成人在线 | 欧美亚洲免费 | 久久国产成人 | 亚洲成人免费在线观看 | 男女中文字幕 | 成人综合av | 草草网站| xxxx性欧美 | 欧美日韩电影一区 | 亚洲国产成人精品女人久久久 | 免费一区二区三区 | 亚洲一区电影 | 爱爱视频网站 | 亚洲国产精品自拍 | 日韩综合一区 | 免费一区| 色综合色综合 | 亚洲三区在线观看 | av网址在线播放 | 日韩精品视频在线观看免费 | 最新超碰 |