1、常见的json    jar包,及其优缺点(开发中可以一起使用)

  json-lib           缺点:依赖第三方的包
  jackson        SpringMVC内置的json装换工具,依赖包较少
  GSON          谷歌开源jar包,功能最强大,不依赖任何包
  fastjson        阿里巴巴开源jar包,效率最高,不依赖任何报

2、在需要返回的方法前面加上     @ResponseBody注解

 @RequestMapping(value = "/user/userview.html", method = RequestMethod.POST)
@ResponseBody
public Object getUserById(@RequestParam String uid) {
String cjson = "";
if (StringUtils.isNullOrEmpty(uid)) {
return "nodata";
} else {
try {
User user = userService.getUserById(uid);
cjson = JSON.toJSONString(user);
} catch (Exception e) {
e.printStackTrace();
return "failed";
}
}
return cjson;
}

3、对日期格式的处理

[{"address":"北京海淀","age":5,"birthday":,"createdBy":0,"gender":2,"id":19,"modifyBy":0,"phone":"13878907654","userCode":"admin","userName":"系统管理员","userType":1}]

在查看日期格式的内容时,我们发现日期格式不是我们想要的

 解决办法1:

在对应实体类的日期加上注解:针对阿里巴巴的  fastjson---------------@JSONField(format="yyyy-MM-dd"),缺点是依赖性太强,强耦合

解决方法2:

配置视图解析图

在springMVC配置文件中配置 

 <!-- 配置多视图解析器,允许用同样的内容数据来呈现不同的view -->
<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<!-- 支持参数匹配 -->
<property name="favorParameter" value="true"/>
<!-- contentType 以何种格式进行展示 -->
<property name="mediaTypes">
<map>
<entry key="html" value="text/html;charset=UTF-8"/>
<entry key="xml" value="application/xml;charset=UTF-8"/>
<entry key="json" value="application/json;charset=UTF-8"/>
</map>
</property>
<property name="viewResolvers">
<list>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
</list>
</property>
</bean>
@RequestMapping(value = "/user/userview2", method = RequestMethod.GET)
@ResponseBody
public Object getUserById2(@RequestParam String uid) {
User user = new User();
try {
user = userService.getUserById(uid);
} catch (Exception e) {
e.printStackTrace();
}
return user;
}

访问路径:两种方式:(可以访问json、xml、html、xls....)

(1)、使用扩展名:   http://localhost:8080/ShopSystem/user/userview2.json?uid=19

(2)、使用参数(favorParameter):   http://localhost:8080/ShopSystem/user/userview2?uid=19&format=json

注:访问xml时需要在对应实体类配置注解       @XmlRootElement

页面输出:

springmvc对于JSON对象的处理的更多相关文章

  1. springmvc返回json对象

    1.引入jackson的依赖 <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -- ...

  2. 本文使用springMVC和ajax,实现将JSON对象返回到页面

    一.引言 本文使用springMVC和ajax做的一个小小的demo,实现将JSON对象返回到页面,没有什么技术含量,纯粹是因为最近项目中引入了springMVC框架. 二.入门例子 ①. 建立工程, ...

  3. SpringMVC 前端获得定义JSON对象的方法

    SpringMVC 前端获得定义JSON对象的方法: 可以使用map进行对象的创建,这样就会解析成键值对,不需要为前端专门定义对象.

  4. SpringMVC接收json数组对象

    最近帮一个妹子解决一个需求,就是前台使用ajax传三个相同的对象,再加一个form表单对象.然后遇到各种问题,终于解决了,@RequestBody接收Json对象字符串 ​以前,一直以为在Spring ...

  5. 前台JSON对象传给springmvc,解析为map对象

    前台JSON对象传给springmvc,解析为map对象 javascript: $.ajax({ url : url, method : 'post', contentType : 'applica ...

  6. SpringMVC @RequestBody接收Json对象字符串

    其实 @RequestBody接收的是一个Json对象的字符串,而不是一个Json对象.然而在ajax请求往往传的都是Json对象,后来发现用 JSON.stringify(data)的方式就能将对象 ...

  7. springmvc json字符串转化成json对象

    问题出现在 :页面数据列表的展示出现 [object HTMLInputElement] 找到问题的所在原因后又三种解决方案 一:格式化json字符串为json对象字符串 success:functi ...

  8. springMvc接收json和返回json对象

    导入三个包 页面: function sendJson(){ //请求json响应json $.ajax({ type:"post", url: "${pageConte ...

  9. spring入门(七)【springMVC返回json串】

    现在多数的应用为了提高交互性多使用异步刷新,即在不刷新整个页面的情况下,只刷新局部,局部刷新用得最多就是ajax,ajax和后台进行交互的数据格式使用的最多的是JSON,这里简单描述,在springm ...

随机推荐

  1. MUI点击事件获取当前对象,及当前对象的属性值

    //用惯了jquery,开始用mui还是有些不习惯 //直接贴代码吧 <nav class="mui-bar mui-bar-tab"> <a class=&qu ...

  2. 简单类型对象 String

    简单值不是对象,因此也没有属性方法,因此运行下面代码时   var s1 = “some text”; var s2 = s1.substring(2);   实际上是运行在read模式,字符串的值会 ...

  3. windows下配置wampserver

    第一,打开局域网访问 配置文件:点击右下角的WAMP 服务器小托盘,选择Apache>httpd.conf 搜索关键字 "deny from ",会发现一处 "de ...

  4. 一款特好用的JavaScript框架——JQuery

      了解了解                    jQuery是一个快速,小巧,功能丰富的JavaScript库.它使诸如HTML文档遍历和操纵,事件处理,动画和Ajax等事情变得简单得多,而且易于 ...

  5. Maven元素解析——pom.xml

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6628201.html  一个pom.xml中包含了许多标签,各个标签是对项目生命周期.依赖管理的配置.常用的主 ...

  6. 无限分级Repeater递归实现:读取一次数据库,使用LINQ2SQL技术,支持排序&amp;显示隐藏

    预览效果图: Selenium 数据库结构: id(int)    classname(string)   parentid(int) sort(int用于显示与排序) 1 家居 0 1 2 家电 0 ...

  7. 插件lombok的介绍安装

    Lombok插件 介绍一个不错的Eclipse插件Lombok 该插件对Log4j简化的代码,因为不大,所以jar包也存在呢! Lombox是Eclipse的一个插件,用来自动生成Java代码,减少手 ...

  8. 多个Fragment的分开管理方案

    当项目里有多个Fragment的时候  我们希望让Fragment有个分类 并且展示的时候不会混淆在一起 例如:项目中导航栏有三个按钮   每个按钮对应一种分类的布局,每个分类的布局中有多个Fragm ...

  9. 获取request header的值

    1Sring mvc 中可以通过注解  : @RequestHeader ("host") String hostName 2httpservletrequest request ...

  10. .net中ThreadPool与Task的认识总结

    线程池和Task是多线程编程中两个经常使用的技术,大家在熟悉不过了.他们有什么关联关系?Task又是怎么工作的呢?估计很多时候会犯糊涂.通过翻阅资料,终于弄明白了,与大家分享一下.   工作线程与I/ ...