非springboot项目

本工具支持嵌入至任意servlet应用,对于非springboot需要自定义一个filter,并初始化相关配置参数。

非springboot项目实现代码

01.
<![CDATA[
02.
// 参考EzClientAutoConfiguration,结合配置文件,初始化 EzClientBootstrap 如下代码全部使用默认值
03.
public class EzClientServletFilter implements Filter {
04.
05.
EzClientBootstrap ezBootstrap = EzClientBootstrap.instance();
06.
@Override
07.
public void init(FilterConfig filterConfig) throws ServletException {
08.
ezBootstrap.init();
09.
}
10.
11.
@Override
12.
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws Exception {
13.
HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;
14.
HttpServletResponse httpServletResponse = (HttpServletResponse) servletResponse;
15.
if(! httpServletRequest.getRequestURI().startsWith("/topezadmin")){
16.
filterChain.doFilter(servletRequest,servletResponse);
17.
return;
18.
}
19.
try {
20.
ezBootstrap.doFilter(httpServletRequest, httpServletResponse,filterChain);
21.
} catch (Exception e) {
22.
LOGGE.error("", e);
23.
httpServletResponse.getWriter().println(e.getMessage());
24.
} finally {
25.
Utils.clearLog();
26.
}
27.
}
28.
29.
}
30.
]]>