1. 程式人生 > >SpringMVC使用@ResponseBody報406錯誤的分析和解決辦法

SpringMVC使用@ResponseBody報406錯誤的分析和解決辦法

使用了@ResponseBody註解 並返回了一個map後出現406錯誤

看一下@ResponseBody的作用:@responseBody註解的作用是將controller的方法返回的物件通過適當的轉換器轉換為指定的格式之後,寫入到response物件的body區,通常用來返回JSON資料或者是XML資料

當我使用@ResponseBody並返回Map時,SpringMVC會使用內部的MessageConverters將map解析為json資料,而轉換為json需要對應的實現

解決辦法: 引入maven依賴:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.1.0</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-annotations</artifactId>
    <version>2.1.0</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.1.0</version>
</dependency>
若沒有使用maven,請根據依賴中的artifactId搜尋對應jar包引入專案中