package com.dbnt.faisp.config; import com.dbnt.faisp.main.userInfo.model.UserInfo; import com.dbnt.faisp.main.userInfo.model.UserRequestLog; import com.dbnt.faisp.main.userInfo.service.UserInfoService; import com.dbnt.faisp.main.userInfo.service.UserLogService; import com.dbnt.faisp.util.Utils; import lombok.RequiredArgsConstructor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.HandlerInterceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @Component @RequiredArgsConstructor public class FaispInterceptor implements HandlerInterceptor { private Logger logger = LoggerFactory.getLogger(this.getClass()); private final UserLogService userLogService; @Override public void afterCompletion( HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex ) throws Exception { //페이지 렌더링 후 실행. UserRequestLog log = new UserRequestLog(); log.setContactIp(Utils.getClientIP(request)); log.setRequestUrl(request.getRequestURI()); log.setRequestMethod(request.getMethod()); log.setSearchParams(request.getQueryString()); log.setHandlerDescription(((HandlerMethod) handler).toString()); log.setUserOrgan((String) request.getSession().getAttribute("userOrgan")); log.setUserBelong((String) request.getSession().getAttribute("belongValue")); userLogService.saveRequestLog(log); } }