springboot2.4.3-org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptab

springboot2.4.3在返回json字符串时可以直接使用@restcontroller注解。

@RestController
public class MyController {
    @RequestMapping("/test")
    public Test test(){
        return new Test(12, "asdf");
    }
}

但是却遇到type=Not Acceptable, status=406这个错误,IDEA控制台报警告:org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation。

意思是不可接受的http数据类型,这坑爹的错误类型导致我以为是jackson没有自动配置好(springboot的web starter依赖中自带json转换的starter,有jackson、gson、jsonb三种方式,默认使用jackson),于是开始疯狂查为什么没有自动配置好json转换的配置。

找了好久最后发现问题所在:不是因为没有自动配置好,是因为实体类没有getter方法。在实体类上加上相应的getter方法,就可以生成json字符串,有几个getter方法就会生成对应属性的json。

那你为什么要报这个406这个错误类型呢?简直误导,服气。。

上一篇:SpringMVC个人笔记


下一篇:sax解析XML文件存在系统级内存泄露