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类中会有不同的解析, ...
随机推荐
- Google两步验证安装使用方法
http://www.williamlong.info/archives/2754.html
- java基础讲解10-----类的高级特性
一.final关键字 1.final关键字修饰变量,表示变量不可以被改变,如果想修改,编译器不会接受的. 注意:final关键字定义的变量必须赋值 public static final 修饰 白 ...
- uva 10808 - Rational Resistors(基尔霍夫定律+高斯消元)
题目链接:uva 10808 - Rational Resistors 题目大意:给出一个博阿含n个节点,m条导线的电阻网络,求节点a和b之间的等效电阻. 解题思路:基尔霍夫定律,不论什么一点的电流向 ...
- atitit.md5算法的原理 与 总结
atitit.md5算法的原理 与 总结 1. MD5的位数 128位1 2. 字节数组转换为32位字符串 base161 2.1. 十六进制字符用4个二进制位来表示1 2.2. byte[]和十六进 ...
- poj 1806 Frequent values(RMQ 统计次数) 详细讲解
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1806 题目大意:给你一个非降序排列的整数数组,你的任务是对于一系列的询问,(i,j),回答序列中出现次 ...
- nyoj 742 子串和再续 类似 HDU 1024
子串和再续 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 给你一个序列 S1, S2, S3, S4 ... Sx, ... Sn (1 ≤ x ≤ n ≤ 1,000 ...
- linux学习笔记9--命令cat
cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. cat命令连接文件并打印到标准输出设备上, ...
- Ubuntu12.04安装vim7.3
刚开始使用Linux的新手,Ubuntu的软件中心可以直接安装vim,个人觉得那样跟windows就没啥区别了,借vim正好也学习一下Linux的编译安装方法,记录一下. Linux下有很多安装形式, ...
- 理解Callable 和 Spring DeferredResult(翻译)
1-介绍 Servlet 3中的异步支持为在另一个线程中处理HTTP请求提供了可能性.当有一个长时间运行的任务时,这是特别有趣的,因为当另一个线程处理这个请求时,容器线程被释放,并且可以继续为其他请求 ...
- [转]JVM内存溢出的几种方式比较
转载自:https://github.com/pzxwhc/MineKnowContainer/issues/25 包括: 1. 栈溢出(StackOverflowError) 2. 堆溢出(OutO ...