今天在开发项目的时候有一个错误:查询方法返回一个Map对象到前端列表,在调试的时候前端一直弹出404错误页面,打断点,F12也一直没找到错误源头,后来分析一下我返回的是一个map对象不需要进行页面跳转,为什么会一直弹出404错误框,在一顿分析之后发现没有在返回方法前加@ResponseBody注解,其实这个错误可以通过打断点看出来,前提是你得有反编译插件,我的开发工具没安装发编译插件,调试时也没有仔细看栈堆,所以忽略了这一步。
下面说一下为啥返回map或string对象时需要@ResponseBody注解:springmvc框架在接到返回值的时候,无论是map对象还是string对象,还是model或modelandview对象都会把它转换成view对象也就是视图对象返回,所以之前我的map对象就被当成一个视图返回了,从而造成404页面出现,这一过程可以通过打断点来查看详细步骤。