login : filter
This commit is contained in:
22
login/src/main/java/hello/login/WebConfig.java
Normal file
22
login/src/main/java/hello/login/WebConfig.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package hello.login;
|
||||
|
||||
import hello.login.web.filter.LogFilter;
|
||||
import org.springframework.boot.web.servlet.FilterRegistrationBean;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import javax.servlet.Filter;
|
||||
|
||||
@Configuration
|
||||
public class WebConfig {
|
||||
|
||||
@Bean
|
||||
public FilterRegistrationBean<Filter> logFilter() {
|
||||
FilterRegistrationBean<Filter> filterRegistrationBean = new FilterRegistrationBean<>();
|
||||
filterRegistrationBean.setFilter(new LogFilter());
|
||||
filterRegistrationBean.setOrder(1);
|
||||
filterRegistrationBean.addUrlPatterns("/*");
|
||||
|
||||
return filterRegistrationBean;
|
||||
}
|
||||
}
|
||||
42
login/src/main/java/hello/login/web/filter/LogFilter.java
Normal file
42
login/src/main/java/hello/login/web/filter/LogFilter.java
Normal file
@@ -0,0 +1,42 @@
|
||||
package hello.login.web.filter;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.IOException;
|
||||
import java.util.UUID;
|
||||
|
||||
@Slf4j
|
||||
public class LogFilter implements Filter {
|
||||
|
||||
@Override
|
||||
public void init(FilterConfig filterConfig) throws ServletException {
|
||||
log.info("log filter init");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
|
||||
log.info("log filter doFilter");
|
||||
|
||||
HttpServletRequest httpRequest = (HttpServletRequest) request;
|
||||
String requestURI = httpRequest.getRequestURI();
|
||||
|
||||
String uuid = UUID.randomUUID().toString();
|
||||
|
||||
try {
|
||||
log.info("REQUEST [{}][{}]", uuid, requestURI);
|
||||
chain.doFilter(request, response);
|
||||
} catch (Exception e) {
|
||||
throw e;
|
||||
} finally {
|
||||
log.info("RESPONSE [{}][{}]", uuid, requestURI);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void destroy() {
|
||||
log.info("log filter destroy");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user