是一种在JSP中访问视图名称的方法(profile在下面的示例中),或者我需要将此名称添加到模型中?
@RequestMapping(value="/user/account", method=RequestMethod.GET)
return "profile";
}
Run Code Online (Sandbox Code Playgroud)
小智 14
我最近遇到了同样的问题.可能有一种正式的方法来解决这个问题,但我找不到它.我的解决方案是创建一个拦截器,将视图名称放入模型中.
我的拦截器非常简单:
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
public class ViewNameInModelInterceptor extends HandlerInterceptorAdapter {
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
if (modelAndView != null) {
modelAndView.addObject("springViewName", modelAndView.getViewName());
}
super.postHandle(request, response, handler, modelAndView);
}
}
Run Code Online (Sandbox Code Playgroud)
在spring配置中注册它也很简单(使用命名空间配置):
<mvc:interceptors>
<beans:bean class="ViewNameInModelInterceptor" />
</mvc:interceptors>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7689 次 |
| 最近记录: |