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

时间:2014-04-04 17:26:59

标签: java jsp servlets filter servlet-filters

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

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

    }

3 个答案:

答案 0 :(得分:1)

这是一个非常基本的示例...但是我们假设登录过程在会话中设置了一个名为" user" 在doFilter方法中你可以做这样的事情

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

答案 1 :(得分:0)

将在过滤器的初始化时调用

init()方法,并在发出请求时调用doFilter()并映射Filter以过滤这些请求


相关:

答案 2 :(得分:0)

有关示例,请参阅Filters Tutorial,尤其是标题为“使用过滤器进行身份验证”的部分。 (有一个错字,实际上是这样说"使用Filers&#34进行身份验证;但这就是我所指的部分......显然它应该说过滤器:)