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类中会有不同的解析, ...
随机推荐
- Linux日知录(常用问题笔记)
http://blog.csdn.net/yizhu2000/article/details/70688420)序言 日有一知,当有一录,自09年来,工作所需,接触开源平台,对Linux常有涉猎,其间 ...
- 解决windows server2003 64位操作系统上不能加载32位应用程序dll 的问题
[FileLoadException: Could not load file or assembly 'sapnco_utils, Version=3.0.0.42, Culture=neutral ...
- unity3d为对象添加脚本的两种方法
首先添加一个物体,然后新建一个C#脚本.接下去有两种方法把C#脚本与物体绑定. 1.在类声明上方添加如下代码: [AddComponentMenu("a/b")] 这句话表示在该物 ...
- swift向方法传数组参数的语法
总是记不住向方法中传数组参数的语法,所以记录一下. func calculateStatistics(scores:[Int]) -> (min:Int,max:Int,sum:Int) { v ...
- 基于DDD的现代ASP.NET开发框架--ABP系列之1、ABP总体介绍
点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之1.ABP总体介绍 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)” ...
- C#面试题汇总2
http://www.cnblogs.com/wangjisi/archive/2010/06/14/1758347.html 用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及 ...
- CentOS下安装man手册
1.命令: yum install man 后发现,有的函数仍然没有.经过一番查找,原来安装的不完全,还要执行下面命令: yum install man-pages 2.总结:cengos下安装man ...
- atitit.http get post的原理以及框架实现java php
atitit.http get post的原理以及框架实现java php 1. 相关的设置 1 1.1. urlencode 1 1.2. 输出流的编码 1 1.3. 图片,文件的post 1 2. ...
- [elk]elasticsearch5.0及head插件安装
ElasticSearch2.3/2.4升级到ElasticSearch5.0 参考文档(排名不分先后)https://www.elastic.co/guide/en/elasticsearch/re ...
- redis源码学习_字典
redis中字典有以下要点: (1)它就是一个键值对,对于hash冲突的处理采用了头插法的链式存储来解决. (2)对rehash,扩展就是取第一个大于等于used * 2的2 ^ n的数作为新的has ...