springmvc4整合AJAX使用@ResponseBody注解返回JSON数据格式

简介: 版权声明:本文为博主原创文章,如需转载,请标明出处。 https://blog.csdn.net/alan_liuyue/article/details/53433325   ...
版权声明:本文为博主原创文章,如需转载,请标明出处。 https://blog.csdn.net/alan_liuyue/article/details/53433325

    一、在使用springMVC4+Hibernate4集成框架,需要使用到@ResponseBody注解来配合AJAX的使用,

但依靠springMVC3的配置和jar包可能会出现

    1. java.lang.ClassNotFoundException: com.fasterxml.jackson.core.Jso;

    2. java.lang.IllegalStateException: LifecycleProcessor not initialized - call 'refresh' before ;

等的问题,所以需要配置新增的jar包来实现该功能;

    新的jar包有4个包括:jackson-jr-all-2.4.3.jar;jackson-annotations-2.6.0.jar;jackson-core-2.6.0.jar;jackson-databind-2.6.0.jar;


    二、在此顺便讲一下@ResponseBody的作用:

    1.使用了@ResponseBody能够直接将controller返回的bean对象或map对象等自动进行json或xml格式的转换,无需再使用JSONObject或者

response.setContentType("application/json")+PrintWriter来将返回的bean、String、map对象转换成JSON格式,再输出到页面上;

    即:

    使用之前,普通的配合AJAX需要controller这样返回JSON数据格式:



@ResponseBody注解的使用方式如下,而使用@ResponseBody之后配合AJAX可以controller这样返回JSON格式数据:



    2. 还有使用@ResponseBody的一个特别之处就是,在使用此注解之后不会再走返回视图处理器路径,而是直接将数据写入到输入流中,

等同于使用response.getWriter().print(data)输出到页面上;


    三、再链接讲一下,当需要使用@ResponseBody注解时,该如何进行配置呢?

    使用springmvc框架时,第一次使用@ResponseBody注解的时候,可能会试着直接在controller的方法上使用这个注解来返回JSON格式数据,

但是这样往往会得不到预期的效果,会出现很多的exception错误。这种情况是正常的,因为你还没有配置好使用这个@ResponseBody注解的

相关jar包和xml。

    1. 对于springmvc4版本的话,整合AJAX异步更新操作和返回JSON数据,使用@ResponseBody注解的话,相关需要的jar包就是上面的那4个,

下载的链接在博客最后;

    2. 对于xml配置的话,也不是很复杂,只需要在springmvc-servlet里面加上以下的配置即可:

    <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
        <property name="messageConverters">
            <list>
                <ref bean="mappingJackson2HttpMessageConverter" />
            </list>
        </property>
    </bean>
    <bean id="mappingJackson2HttpMessageConverter" 
    		class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
        <property name="supportedMediaTypes">
            <list>
            	<value>application/json;charset=UTF-8</value>
                <value>text/html;charset=UTF-8</value>
                <value>text/json;charset=UTF-8</value>    
            </list>
        </property>
     </bean>

    四、附上相关的jar包下载链接,资源都是免费共享:http://download.csdn.net/detail/alan_liuyue/9699971


相关文章
|
25天前
|
JSON 前端开发 JavaScript
JavaWeb基础8——Filter,Listener,Ajax,Axios,JSON
Filter过滤器、Listener监听器、AJAX、 同步、异步优点和使用场景、Axios异步框架、JSON、js和JSON转换、案例,Axios + JSON 品牌列表查询和添加
JavaWeb基础8——Filter,Listener,Ajax,Axios,JSON
|
2月前
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
38 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
2月前
|
XML JSON 前端开发
JSON与AJAX:网页交互的利器
JSON与AJAX:网页交互的利器
28 0
|
3月前
|
JSON 数据格式
MysbatisPlus-核心功能-IService开发基础业务接口,MysbatisPlus_Restful风格,新增@RequestBody指定是为了接收Json数据的,使用swagger必须注解
MysbatisPlus-核心功能-IService开发基础业务接口,MysbatisPlus_Restful风格,新增@RequestBody指定是为了接收Json数据的,使用swagger必须注解
|
4月前
|
XML JSON 前端开发
第十一篇JavaScript JSON与AJAX
第十一篇JavaScript JSON与AJAX
28 0
|
5月前
|
JSON 前端开发 JavaScript
jQuery ajax读取本地json文件 三级联动下拉框
jQuery ajax读取本地json文件 三级联动下拉框
|
13天前
|
XML 存储 JSON
Twaver-HTML5基础学习(19)数据容器(2)_数据序列化_XML、Json
本文介绍了Twaver HTML5中的数据序列化,包括XML和JSON格式的序列化与反序列化方法。文章通过示例代码展示了如何将DataBox中的数据序列化为XML和JSON字符串,以及如何从这些字符串中反序列化数据,重建DataBox中的对象。此外,还提到了用户自定义属性的序列化注册方法。
30 1
|
10天前
|
存储 JSON Go
在Gin框架中优雅地处理HTTP请求体中的JSON数据
在Gin框架中优雅地处理HTTP请求体中的JSON数据
|
14天前
|
JSON JavaScript 数据格式
vue写入json数据到文本中+vue引入cdn的用法
vue写入json数据到文本中+vue引入cdn的用法
37 10
|
12天前
|
JSON 数据格式
Blob格式转json格式,拿到后端返回的json数据
文章介绍了如何将后端返回的Blob格式数据转换为JSON格式,并处理文件下载和错误提示。
24 0
Blob格式转json格式,拿到后端返回的json数据

热门文章

最新文章

下一篇
无影云桌面