Java:使用过滤器(用户已登录/用户未登录)

Java:使用过滤器(用户已登录/用户未登录),java,jsp,servlets,filter,servlet-filters,Java,Jsp,Servlets,Filter,Servlet Filters,我需要写一个代码,它将重定向到不同的*.jsp站点,这取决于用户是否登录。我发现了一个提示,我可以使用filter来完成它,我需要使用doFilter或/以及init方法。有什么想法吗 public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { } public void init(Fi

我需要写一个代码,它将重定向到不同的*.jsp站点,这取决于用户是否登录。我发现了一个提示,我可以使用filter来完成它,我需要使用doFilter或/以及init方法。有什么想法吗

public void doFilter(ServletRequest req, ServletResponse res,
            FilterChain chain) throws IOException, ServletException {
    }
public void init(FilterConfig config) throws ServletException {

    }
在筛选器初始化时将调用
init()
方法,在发出请求时将调用
doFilter()
,并且
Filter
映射到筛选这些请求


相关的:


有关示例,请参阅,特别是标题为“使用过滤器进行身份验证”的部分。(有一个打字错误,实际上是说“使用文件服务器进行身份验证”,但这是我所指的部分…显然它应该是说过滤器:)

这是一个非常基本的示例…但是让我们假设登录过程在会话中设置了一个名为“用户”的属性 在doFilter方法中,您可以执行如下操作

if( request.getSession().getAttribute("user") == null )
{
//User not logged...redirect
}
else
{
//Normal filter execution
}