日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

SpringMVC接收Post的实体/JSon数据

發(fā)布時(shí)間:2025/3/15 javascript 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringMVC接收Post的实体/JSon数据 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

接口代碼:

@ResponseBody
@RequestMapping(value = "/test",method = RequestMethod.POST)/*只允許POST方式調(diào)用此接口*/
public returnType functionName(/*POST數(shù)據(jù)內(nèi)容*/@RequestBody parameterType parameterName,HttpServletRequest request) throws Exception {}

?

配置:

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
</bean>

?

依賴(lài)文件:

<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.2.1</version>
</dependency>

?

邏輯代碼:

/*如果是List數(shù)據(jù) ?在接收到數(shù)據(jù)之后 ?需要轉(zhuǎn)換類(lèi)型*/

/*否則不需要轉(zhuǎn)換*/

ObjectMapper mapper = new ObjectMapper();

for (int i = 0; i < behaviorList.size(); i++) {
/*由于客戶(hù)端POST過(guò)來(lái)的List是LinkedHashMap類(lèi)型的數(shù)據(jù)
* 所以需要用ObjectMapper進(jìn)行解析轉(zhuǎn)換*/

ClassName clazz = mapper.convertValue(List.get(i),ClassName.class);

}

?

實(shí)體類(lèi):

如果訪問(wèn)端是C# ? DateTime類(lèi)型要重置為String類(lèi)型,否則服務(wù)端無(wú)法解析

?

?

訪問(wèn)端(C#):

/*POST之前 ?要先將實(shí)體類(lèi)轉(zhuǎn)換為JSon字符串 ? 然后再轉(zhuǎn)換成Byte數(shù)組*/

?HttpWebRequest httpReq = (HttpWebRequest)WebRequest.Create(uri);

httpReq.Method = "POST";
httpReq.Accept = "*/*";
httpReq.ContentType = "application/json; charset=utf-8";

byte[] buffer = Encoding.UTF8.GetBytes(dataJsonString);

httpReq.ContentLength = buffer.Length;
httpReq.GetRequestStream().Write(buffer, 0, buffer.Length);

HttpWebResponse httpResp = (HttpWebResponse)httpReq.GetResponse();
Stream respStream = httpResp.GetResponseStream();
StreamReader respStreamReader = new StreamReader(respStream, Encoding.UTF8);
string result = respStreamReader.ReadToEnd();

?

?

以上是個(gè)人遇到問(wèn)題時(shí)候 ? ? 嘗試了一天時(shí)間找到的解決辦法 ? ?

本人java菜鳥(niǎo) ? 解決方案也許比較片面或老舊或笨拙 ? ?望大神指教?

也希望能夠幫到遇到同樣問(wèn)題的朋友

?

轉(zhuǎn)載于:https://www.cnblogs.com/JosephBee/p/5670571.html

總結(jié)

以上是生活随笔為你收集整理的SpringMVC接收Post的实体/JSon数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。