package com.dy.common.webFilter;
|
|
import com.dy.common.multiDataSource.DataSourceContext;
|
import jakarta.servlet.*;
|
import jakarta.servlet.http.HttpServletRequest;
|
import lombok.extern.slf4j.Slf4j;
|
|
import java.io.IOException;
|
|
/**
|
* @author ZhuBaoMin
|
* @date 2024-06-19 11:02
|
* @LastEditTime 2024-06-19 11:02
|
* @Description
|
*/
|
|
@Slf4j
|
public class WXDataSourceNameSetFilter implements Filter {
|
@Override
|
public void init(FilterConfig filterConfig) throws ServletException {
|
}
|
|
@Override
|
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
|
HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
|
String wxDataSourceName = httpRequest.getHeader("tag");
|
if(wxDataSourceName != null && wxDataSourceName.trim().length() > 0){
|
log.info("微信开发,设置数据源名称为:" + wxDataSourceName);
|
//把组织单位标签作为数据源名称
|
DataSourceContext.set(wxDataSourceName);
|
} else {
|
log.info("用户未选择数据源");
|
}
|
|
filterChain.doFilter(servletRequest, servletResponse);
|
}
|
|
@Override
|
public void destroy() {
|
}
|
}
|