SpringBoot之拦截器对数据库的访问

    在项目中遇到了需要在拦截器中对数据库进行查询!

    在网上查了一些方法,像@Bean或者@Service等都没有得到想要的结果。但是还是找到了一种方法进行解决。

    忘记了是在那个网页看到的了!!!抱歉!

   
解决方案如下:

    第一步:

@Configuration
public class ServerWebAppConfigurer extends WebMvcConfigurerAdapter {

    @Autowired
    private ClientSessionRepository sessionRepository;

    @Autowired
    private UserDiskRepository userDiskRepository;

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new AttestationInterceptor(sessionRepository, userDiskRepository)).addPathPatterns("/**");
        super.addInterceptors(registry);
    }
}
    第二步:

public class AttestationInterceptor implements HandlerInterceptor {

    private final Logger logger = Logger.getLogger(this.getClass());

    public ClientSessionRepository sessionRepository;

    public UserDiskRepository userDiskRepository;

    public AttestationInterceptor(ClientSessionRepository sessionRepository,
                                  UserDiskRepository userDiskRepository){
        this.sessionRepository = sessionRepository;
        this.userDiskRepository = userDiskRepository;
    }
}
这样就可以是实现对数据库的访问了!希望可以帮助大家。


   

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页