TenantInterceptor.java 985 B

123456789101112131415161718192021222324252627282930
  1. package com.ym.interceptor;
  2. import com.ym.mec.biz.service.TenantInfoService;
  3. import com.ym.mec.common.tenant.TenantContextHolder;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.context.annotation.Lazy;
  6. import org.springframework.stereotype.Component;
  7. import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10. @Component
  11. public class TenantInterceptor extends HandlerInterceptorAdapter {
  12. @Autowired
  13. @Lazy
  14. private TenantInfoService tenantInfoService;
  15. @Override
  16. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler){
  17. tenantInfoService.saveTenantContextHolder(request);
  18. return true;
  19. }
  20. @Override
  21. public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
  22. TenantContextHolder.clearTenantId();
  23. }
  24. }