這已經不是我第一次遇到406異常了,以前解決了問題都沒有記錄下來,導致我今天又犯了同樣的錯誤!先對該問題作記錄。
出現406問題的原因是使用了@ResponseBody註解,但又缺少依賴。
我的解決方法:
- 確保數據庫使用了正確的編碼格式,這是最基礎的
添加jar依賴
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.7.1-1</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.44</version> </dependency>
在配置文件中添加配置
<!--避免IE執行AJAX時,返回JSON出現下載文件 --> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/plain;charset=UTF-8</value> </list> </property> </bean> </list> </property> </bean>
使用@RequestMapping路徑請求數據時,在請求方法路徑的後綴上不要以.htm或.html結尾
@RequestMapping(value = "/getallEmoloyee") //不是@RequestMapping(value = "/getallEmoloyee.htm") @ResponseBody public List<Employee> getallEmoloyee() { return employeeService.getallEmployee(); }
希望對你有所幫助