Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 包括登录方法_Java_Spring_Spring Mvc - Fatal编程技术网

Java 包括登录方法

Java 包括登录方法,java,spring,spring-mvc,Java,Spring,Spring Mvc,我有一个实体用户,我希望每个控制器的每个方法都可以访问登录的用户,而无需键入以下内容: model.addAttribute(userDao.getuser(principal.getUsername())); 您可以实现一个简单的HandlerInterceptorAdapter,它将在调用处理程序后将用户实例添加到模型中 class UserAddingHandlerInterceptor extends HandlerInterceptorAdapter { // Autowi

我有一个实体用户,我希望每个控制器的每个方法都可以访问登录的用户,而无需键入以下内容:

model.addAttribute(userDao.getuser(principal.getUsername()));

您可以实现一个简单的
HandlerInterceptorAdapter
,它将在调用处理程序后将用户实例添加到模型中

class UserAddingHandlerInterceptor extends HandlerInterceptorAdapter {

    // Autowire dependencies...

    private static final String ATTRIBUTE = "user";

    @Override
    public void postHandle(HttpServletRequest request, 
                           HttpServletResponse response, 
                           Object handler, 
                           ModelAndView modelAndView) throws Exception {

        if (modelAndView != null && !modelAndView.getModelMap().hasAttribute(ATTRIBUTE) {
            modelAndView.addObject(ATTRIBUTE, userDao.getuser(principal.getUsername()));
        }
    }
}