解决No converter for [class java.util.ArrayList] with preset Content-Type ‘null‘问题


一、出现问题


二、解决方法
 

1、检查Maven依赖是否成功导入,记得clear后刷新!

<!--json依赖-->
<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-databind</artifactId>
  <version>2.12.1</version>
</dependency>

2、更新lib目录,确保加入Maven包


如果不是上面两步出错的话,那我准备的方法可就用上了哦!

1、方法一:
在Spring MVC配置文件中,加上这行代码:

 <mvc:annotation-driven/>
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="
       http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc.xsd
">

    <!--
       支持mvc注解驱动:
       在spring中一般采用@RequestMapping注解来完成映射关系
       要想使@RequestMapping注解生效
       必须向上下文中注册DefaultAnnotationHandlerMapping
       和一个AnnotationMethodHandlerAdapter实例
       这两个实例分别在类级别和方法级别处理。
       而annotation-driven配置帮助我们自动完成上述两个实例的注入。
    -->
    <mvc:annotation-driven/>

</beans>


经实测,方法一可行!
若不行的话,降低依赖版本,再次测试!
真的还不行的话,看方法二!

2、方法二:
创建对象映射器、解析成需要的格式!

package com.jin.controller;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.jin.pojo.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;


@RestController
public class UserController2 {

    @RequestMapping(value = "/j2",produces = "application/json;charset=utf-8")
    public String json2() throws JsonProcessingException {

        //创建对象映射器
        ObjectMapper mapper = new ObjectMapper();
        
        ArrayList<User> list = new ArrayList<>();

        User user1 = new User("酷小亚","14","男");
        User user2 = new User("张三","15","男");
        User user3 = new User("李四","16","男");
        User user4 = new User("王五","17","男");
        list.add(user1);
        list.add(user2);
        list.add(user3);
        list.add(user4);

        //将对象解析成为json格式
        String str = mapper.writeValueAsString(list);
        return str;

    }
}



原文链接:https://blog.csdn.net/weixin_45737330/article/details/126775343

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值