有关SpringWeb MVC和TreadLocal的清空操作问题

哥哥:door:,用SpringMVC的web里用filter把用户信息存在TreadLocal里,我现在是在同个filter里用finaly把ThreadLocal清空,请问这样可以吗,会不会出什么问题,有没有更好的方案
这是我的源码:

authService.setUserContext(<some user context>);
try {
    filterChain.doFilter(request,response);
}catch (Exception exception){
}finally {
    authService.cleanUserContext();
}
#AuthService.java

    ThreadLocal<UserInfoContext> userContext=new ThreadLocal<>();

    public void setUserContext(UserInfoContext context){
        userContext.set(context);
    }

    public void cleanUserContext(){
        userContext.remove();
    }

没问题。本来就该这样。

好的,mua​:kiss:

有没有什么异常或者advice会导致这个finally不跑?
除了 System#exit

除了 exit() 退出jvm,断电。finaly 必执行。