参考文章:https://blog.csdn.net/qq_37164847/article/details/82704735
package com.cloud.interceptor;
import com.cloud.service.RedisDataService;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.context.support.WebApplicationContextUtils;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @author langpf 2019/1/16
*/
public class ServiceHandlerInterceptor implements HandlerInterceptor {
@Autowired
RedisDataService redisDataService;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
if (redisDataService == null) {//解决service为null无法注入问题
System.out.println("loginTickerService is null!!!");
BeanFactory factory = WebApplicationContextUtils
.getRequiredWebApplicationContext(request.getServletContext());
redisDataService = (RedisDataService) factory
.getBean("deepcogniZuulService");
}
String id = redisDataService.hi("trrr");
System.out.println(id);
System.out.println(123);
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
// TODO Auto-generated method stub;
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
throws Exception {
// TODO Auto-generated method stub;
}
}