springBoot @RestController 不返回 json,而是查找 jsp 文件的问题
问题描述
Controller 使用 @RestController 注解 或者 使用 @ResponseBody 注解,期望接口返回 JSON 格式数据,但请求时却返回错误信息:
错误原因
@RequestMapping(value = "/login")
public Map<String, Object> login(Map<String, Object> map, HttpServletRequest request, HttpServletResponse response)
参数中多了 Map<String, Object> map
, 就会导致 @RestController 和 @ResponseBody 注解失效,
不会返回 JSON 格式数据,而是去查找对应的模板页面,当成一个Sevlet来处理。
解决方法
去掉 map 参数,放到方法内部声明:
Map<String, Object> map = new HashMap<String, Object>();