spring 版本不同导致json解析问题,解决方案

Spring 版本不同导致json解析问题,解决方案
版本引入:

<spring.version>4.3.2.RELEASE</spring.version>

在执行控制器代码时候,总是报json解析错误

    @RequestMapping("/list")
    @ResponseBody
    public List<EUTreeNode> getCatList(@RequestParam(value = "id", defaultValue = "0") Long parentId) {
        List<EUTreeNode> list = itemCatService.getCatList(parentId);
        return list;
    }

解决方案:

方案 一、 对实体对象转换,直接返回json字符串
1.引入fastJosn

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.33</version>
</dependency>

2.修改输出方式

@RequestMapping(value="/list",produces = "text/json;charset=UTF-8")  
    @ResponseBody  
    public String getCatList(@RequestParam(value = "id", defaultValue = "0") Long parentId) {
        List<EUTreeNode> list = itemCatService.getCatList(parentId);

        String result = JSON.toJSONString(list);
        return result;
        // return list;
    } 

注意这里一定要加编码格式,否则会出现中文乱码的现象

方案二、 更改spring的版本

<spring.version>4.1.3.RELEASE</spring.version>

猜你喜欢

转载自blog.csdn.net/haoqi9999/article/details/74082372