网上有些说请求过来的时候modelMap中没有值或者值为空,设置一下就好了。其实后来发现这种方式只对返回值类型是modelandview的有效,由于我拦截的请求是restcontroller类型的请求,也可以理解成加了@ResposeBody注解的请求,由于这类请求不会返回modelAndview,所以在postHandle方法中modelMap的值为空,不可以向modelMap中放值,即空指针异常,不能调用任何方法。
解决办法如下:
ModelAndView mv = new ModelAndView();
model =mv.getModelMap();
该过程即为初始化modelMap。
这样的话就可以操作modelMap对象,而且页面上也可以取到值。