为了账号安全,请及时绑定邮箱和手机立即绑定

由IDEA构建的SpringMVC:找不到类型返回值的转换器

由IDEA构建的SpringMVC:找不到类型返回值的转换器

汪汪一只猫 2021-09-03 13:53:56
我使用IDEA基于SpringMVC搭建了一个简单的RESTful服务器。但是@RestController 和@ResponseBody 无法通过jackson JSON 将POJO 转换为JSON。在dispatcher-servlet.xml 中:<mvc:annotation-driven/>在pom.xml 中:    <dependency>        <groupId>com.fasterxml.jackson.core</groupId>        <artifactId>jackson-annotations</artifactId>        <version>2.9.5</version>    </dependency>    <dependency>        <groupId>com.fasterxml.jackson.core</groupId>        <artifactId>jackson-core</artifactId>        <version>2.9.5</version>    </dependency>    <dependency>        <groupId>com.fasterxml.jackson.core</groupId>        <artifactId>jackson-databind</artifactId>        <version>2.9.5</version>    </dependency>我的控制器:@RestController@RequestMapping("/test")public class TestController {    @GetMapping("/one")    public One getOne() {        return new One(1);    }}我的POJO:public class One {    public One(int number) {        this.number = number;    }    public int getNumber() {        return number;    }    public void setNumber(int number) {        this.number = number;    }    private int number;}但我仍然得到No converter found for return value of type error 。我不知道为什么。我遇到了一些配置或其他东西吗?
查看完整描述

2 回答

?
眼眸繁星

TA贡献1873条经验 获得超9个赞

您需要指定生产/消费来定义您想要的数据类型,例如:


@RestController

@RequestMapping("/test", produces = {MediaType.APPLICATION_JSON_VALUE})

public class TestController {


    @GetMapping("/one")

    public One getOne() {

        return new One(1);

    }

}


查看完整回答
反对 回复 2021-09-03
?
达令说

TA贡献1821条经验 获得超6个赞

试着把它放在你的 dispatcher-servlet.xml 中:


<mvc:annotation-driven>

     <mvc:message-converters>

            <bean class="org.springframework.http.converter.StringHttpMessageConverter"/>

            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>

   </mvc:message-converters>

</mvc:annotation-driven>


查看完整回答
反对 回复 2021-09-03
  • 2 回答
  • 0 关注
  • 379 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信