在Filter中注入Service

简介: 在Filter中注入Service

贴一段代码简单明了:

@WebFilter(filterName = "MainFilter",urlPatterns = "/*")
public class MainFilter implements Filter {

    private UserService userService;

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        ApplicationContext ctx = WebApplicationContextUtils
                .getRequiredWebApplicationContext(filterConfig.getServletContext());
        userService = ctx.getBean(UserService.class);
    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
           filterChain.doFilter(servletRequest,servletResponse);
    }

    @Override
    public void destroy() {

    }
}

就这样,userService就可以正常使用了

相关文章
|
Java API Apache
springboot 日志配置(logback)(一)
springboot 日志配置(logback)
967 0
|
Oracle 关系型数据库 数据库
OceanBase数据库常见问题之租户创建后想要改字符集如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
Java 数据库连接 mybatis
MyBatis中支持的JdbcType 和JavaType
MyBatis中支持的JdbcType 和JavaType
662 3
vue3配置路由报错Catch all routes (“*“) must now be defined using a param with a custom regexp.
vue3配置路由报错Catch all routes (“*“) must now be defined using a param with a custom regexp.
437 0
|
SQL Java 测试技术
在Spring boot中 使用JWT和过滤器实现登录认证
在Spring boot中 使用JWT和过滤器实现登录认证
637 0
|
12月前
|
监控 UED
记一次HttpClient使用问题分析
【9月更文挑战第19天】在软件开发中,HttpClient 常用于发送 HTTP 请求,但可能遇到请求超时等问题。本文分析了一例间歇性超时现象,从网络连接、配置、服务器响应等方面排查,并提出调整配置、优化逻辑、增加重试及监控等解决方案,最终提升系统稳定性和用户体验。
417 7
|
11月前
|
Java 应用服务中间件 测试技术
Java21虚拟线程:我的锁去哪儿了?
【10月更文挑战第8天】
228 0
|
10月前
|
存储 Java API
|
JSON 缓存 前端开发
验证码demo(简单实现)
验证码demo(简单实现)
217 0
|
安全 Java Spring
Spring Security 报:Encoded password does not look like BCrypt
Spring Security 报:Encoded password does not look like BCrypt
360 1