之前spring mvc返回json数据都是通过自己手动编写类返回的,也知道spring mvc自带这种功能,但一直没有试过,昨天心血来潮想是一把看看,按照网上的说法,大体分为三步:
 
添加jackson相关jar包(spring 3.x和spring 4.x添加的jar包个数貌似也不一样)在spring-mvc.xml(或者projectname-servlet-xml)配置文件中添加注解
在调用的controller方法上添加注释@ResponseBody  完成以上三项就可以了,可事实充分证明,以上三步是正确的,但是经过我多次测试,在我项目中,一直都不能正常工作。  经过多次测试,无数次根据网上的配置方法修改配置文件,更换jar包,始终都不正常。  但有问题总归需要解决,为了排除其他干扰,我重新搭建一个新的springmvc环境,经过测试,最终发现,原来并不是以上的三大步有问题,而是jackson 相关jar的版本问题。  之前我在网上找的资料,没有任何一篇文章上说要注意版本的问题,而且大多都不区分spring3.x和spring 4.x的区别,据其他网友提供说,spring 3.x和spring4.x在配置的时候是有区别的,当然我没有 验证,我用的是spring 4.3的版本。  下面我就来介绍一下spring mvc 4.3版本下如何配置ajax请求返回json数据:  博客开头说的三大步是对的,其中很重要的是版本,经过我测试,spring 4.3用jackson2.7.3版本的没有问题,且只需要三个jar包,其他配置完全一样。  以下是三个jar包和其他配置和测试效果展示:
  
spring-mvc.xm配置  
 
jsp页面调用代码  
 
controller里的方法  
 
测试结果:  
 
两天就解决了这么一个问题,真是惭愧!
                
                
                
        
    
                    转载请注明原文地址: https://ju.6miu.com/read-675639.html