Skip to content

Instantly share code, notes, and snippets.

@blue-210
Created February 15, 2016 02:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save blue-210/1a947e812e4c39ab7ddc to your computer and use it in GitHub Desktop.
Save blue-210/1a947e812e4c39ab7ddc to your computer and use it in GitHub Desktop.
ログインチェックのフィルターサンプルだよ
package org.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
public class LoginCheckFilter implements Filter{
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException,ServletException{
System.out.println("ログインチェック");
// セッションが存在しない場合NULLを返す
HttpSession session = ((HttpServletRequest)req).getSession(false);
if(session != null){
// セッションがNULLでなければ、通常どおりの遷移
chain.doFilter(req, res);
}else{
// セッションがNullならば、ログイン画面へ飛ばす
RequestDispatcher dispatcher = req.getRequestDispatcher("/loginform");
dispatcher.forward(req,res);
}
}
public void init(FilterConfig config) throws ServletException{}
public void destroy(){}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment