情況一
引起的原因:
由於設置了@ResponseBody,要把對象轉換成json格式,缺少轉換依賴的jar包,故報錯。
解決辦法:
加入依賴的jar,jackson-core-asl-x.x.x.jar,jackson-mapper-asl-x.x.x.jar問題解決。
原文請參考:http://jadethao.iteye.com/blog/1926525?utm_source=tuicool&utm_medium=referral
情況二
SpringMvc配置的url-pattern映射規則如下,所有的請求都必須以.html結尾:
Controller:
@RequestMapping("user")
public class UserController {
@Autowired
private UserService userService;
/**
* 檢查用戶名是否可用
* @param username
* @param type
* @return
*/
@RequestMapping(value = "{param}/{type}")
public ResponseEntity<Boolean> check(@PathVariable(value = "param") String param,
@PathVariable(value = "type") Integer type) {
try {
Boolean result = this.userService.check(param, type);
if (null == result) {
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null);
}
// 爲了兼容js邏輯,將結果取反
return ResponseEntity.ok(!result);
} catch (Exception e) {
e.printStackTrace();
}
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(null);
}
}
請求結果:
控制檯錯誤日誌:
錯誤日誌和第一種情況是一樣的,但導包沒有問題。
引起原因:
SpringMVC規定:在SpringMVC中如果請求以html結尾,那麼就不會返回JSON數據。
解決辦法:
添加url-pattern映射規則: