SpringMVC如何接收json数据
请求头:Content-Type=application/json
数据如: {"mobile":"12345678912","smsContent":"今天天气很好!!","sendTime":"2017-05-18 22:43:21","addSerial":"106591111"} import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.jianwu.domain.SmsHttpMo;
import com.jianwu.domain.SmsReceipt;
import com.jianwu.manager.SmsHttpMoManager;
import com.jianwu.manager.SmsReceiptManager;
import com.jianwu.util.DateUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody; import java.text.SimpleDateFormat; @Controller
@RequestMapping("gjapi/sms")
public class SmsReceiptController { private static final Logger logger = LoggerFactory.getLogger(SmsReceiptController.class); @Autowired
private SmsReceiptManager smsReceiptManager;
@Autowired
private SmsHttpMoManager smsHttpMoManager; /**
* @param smsReceiptJSON
*/
@RequestMapping(value = "receipt",method = {RequestMethod.POST})
@ResponseBody
public void receipt(@RequestBody String smsReceiptJSON){
logger.info("---smsReceiptJSON:---" + smsReceiptJSON); JSONObject json = JSON.parseObject(smsReceiptJSON);
SmsReceipt smsReceipt = new SmsReceipt();
if(json.containsKey("reportStatus")){
smsReceipt.setReportStatus(json.getString("reportStatus"));
}
if(json.containsKey("mobile")){
smsReceipt.setMobile(json.getString("mobile"));
}
if(json.containsKey("submitDate")){
smsReceipt.setSubmitDate(DateUtils.stringToDate(json.getString("submitDate"), "yyyyMMddHHmmss"));
}
if(json.containsKey("receiveDate")){
smsReceipt.setReceiveDate(DateUtils.stringToDate(json.getString("receiveDate"), "yyyyMMddHHmmss"));
}
if(json.containsKey("errorCode")){
smsReceipt.setErrorCode(json.getString("errorCode"));
}
if(json.containsKey("msgGroup")){
smsReceipt.setMsgGroup(json.getString("msgGroup"));
}
logger.info("---smsReceipt:---" + smsReceipt.toString()); smsReceiptManager.insert(smsReceipt);
} /**
* @param httpMoJSON
*/
@RequestMapping(value = "httpMo",method = {RequestMethod.POST})
@ResponseBody
public void httpMo(@RequestBody String httpMoJSON){
logger.info("---httpMoJSON:---" + httpMoJSON); JSONObject json = JSON.parseObject(httpMoJSON);
SmsHttpMo smsHttpMo = new SmsHttpMo();
if(json.containsKey("mobile")){
smsHttpMo.setMobile(json.getString("mobile"));
}
if(json.containsKey("smsContent")){
smsHttpMo.setSmsContent(json.getString("smsContent"));
}
if(json.containsKey("sendTime")){
smsHttpMo.setSendTime(DateUtils.stringToDate(json.getString("sendTime"), "yyyy-MM-dd HH:mm:ss"));
}
if(json.containsKey("addSerial")){
smsHttpMo.setAddSerial(json.getString("addSerial"));
}
logger.info("---smsHttpMo:---" + smsHttpMo.toString()); smsHttpMoManager.insert(smsHttpMo);
} }
SpringMVC如何接收json数据的更多相关文章
- 解决SpringMvc后台接收json数据中文乱码问题
原因分析 使用ajax从前台页面传输数据到后台controller控制器的时候,出现中文乱码 其实乱码问题出现的原因,就是由于默认的tomcat配置,接收请求是以ISO-8859-1来转码,导致中文出 ...
- AJAX如何接收JSON数据
简介 在我们了解如何使用AJAX返回JSON数据的时候要先明白下列几点 1. JSON如何来表示对象的 2. JSON如何来表示数组的 var object = { "labId" ...
- ThinkPHP中使用ajax接收json数据的方法
本文实例讲述了ThinkPHP中使用ajax接收json数据的方法.分享给大家供大家参考.具体分析如下: 这里通过ThinkPHP+jquery实现ajax,扩展了下,写了个查询,前台代码如下: 首先 ...
- springmvc 怎么响应json数据
springmvc 怎么响应json数据@Controller@RequestMapping("/items") class ItemsController{ @RequestM ...
- iOS key value coding kvc在接收json数据与 model封装中的使用
iOS key value coding kvc在接收json数据与 model封装中的使用 使用 kvc 能够极大的简化代码工作,及以后的接口维护工作: 1:先创建MovieModel类.h和 . ...
- 后端接收json数据交互
学习记录,后端接收json数据几种方式 1.直接接收或者通过HttpServletRequest接收 public void test(String userid, HttpServletReques ...
- Beego框架POST请求接收JSON数据
原文: https://blog.csdn.net/Aaron_80726/article/details/83870563 ------------------------------------- ...
- springmvc接收json数据的常见方式
经常使用Ajax异步请求来进行数据传输,传的数据是json数据,json数据又有对象,数组.所有总结下springmvc获取前端传来的json数据方式:1.以RequestParam接收前端传来的是j ...
- SprimgMVC学习笔记(八)—— SpringMVC与前台json数据交互
一.两种交互形式 可以看出,前台传过来的方式有两种,一种是传json格式的数据过来,另一种就是在url的末尾传普通的key/value串过来,针对这两种方式,在Controller类中会有不同的解析, ...
随机推荐
- CI框架下nginx重写规则
因为: server { listen ; server_name 222.73.130.124; location / { index index.html index.htm index.php; ...
- java.lang.NullPointerException org.apache.jsp.index_jsp._jspInit(index_jsp.java:22)
java.lang.NullPointerException org.apache.jsp.index_jsp._jspInit(index_jsp.java:22) org.apache.jsp.i ...
- VSCode开发工具下载
VSCode集成多语言和插件,方便开发和代码管理. 请到此处下载:https://code.visualstudio.com/Download
- jqgrid 加按钮列
1.在jqgrid表格中增加列,内容是图标,定义图标单击事件,可以操作这一行的数据,如下图 2.前台代码 <div id="grid_List"> <table ...
- python selenium --frame
本节知识点: 多层框架或窗口的定位: switch_to_frame() switch_to_window() 智能等待: implicitly_wait() 对于一个现代的web应用,经常会出现框架 ...
- 【HTML5 WebSocket】WebSocket对象特性和方法
<HTML5 WebSocket权威指南>学习笔记&3 WebSocket方法的对象特性 1. WebSocket方法 a. send方法 send方法用于在WebSocket连接 ...
- python oop面向对象笔记
#coding:utf-8 class Person(object): def __init__(self,name,wage): self.name = name self.wage = wage ...
- 经典.net面试题目(转载)
1. 简述 private. protected. public. internal 修饰符的访问权限. 答 . private : 私有成员, 在类的内部才可以访问. protected : 保 ...
- intellij中常用的快捷键
intellij快捷键
- C++ STL源代码学习(list篇)
///STL list为双向循环链表 struct _List_node_base { _List_node_base* _M_next; _List_node_base* _M_prev; }; t ...