java登陸過濾器
① java添加過濾器驗證登錄後無法跳轉到登錄界面
改成request.getRequestDispatcher("/login.jsp").forward(request, response);
② java設了用戶登錄過濾器後,沒跳轉一個頁面都要登錄怎麼辦
在過濾器裡面加一個session獲取登錄信息,若已經登陸成功就無需登陸
③ java程序實現登陸。用戶沒有登錄但訪問非登錄的頁面,使用過濾器跳轉到登錄頁,登錄後怎麼回到訪問頁
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest)request;
if(req.getSession().getAttribute("user")==null){
req.setAttribute("error", "請你先登錄");
//非法請求才會進到這裡面,在這里保存請求的url地址,在成功登錄後再進行跳轉
req.getSession().setAttribute("goUrl", req.getRequestURL()+"?"+ req.getQueryString());
request.getRequestDispatcher("/ulogin.jsp").forward(request, response);
}
else{
chain.doFilter(request, response);
}
}
上面的代碼是過濾器中的代碼
下面的是servlet中的代碼
if(request.getSession().getAttribute("goUrl")!=null){
String url = (String)request.getSession().getAttribute("goUrl");
response.sendRedirect(url);
}
else{
response.sendRedirect("/webshopping/index.jsp");
}
④ 求個大神幫我看下JAVAWEB登錄過濾器錯在哪裡登錄成功一樣跳轉到我的404界面!
你為何在驗證前就把用戶名存在session中,第三張圖的代碼你放到哪個頁面
⑤ java單點登錄用過濾器怎麼實現
1、在普通站點A,B上配置抄過濾器,如果訪問到A的頁面時,先訪問本地SESSION看是否登錄,如果沒有,則訪問SSO看是否登錄,如果沒有則轉到公共登錄界面
2、公共登錄界面登錄完以後寫SSO的SESSION,並通過地址欄返回給A登錄的用戶名
3、A寫本地SESSION,完成登錄過程。
4、當訪問B應用時,先訪問本地SESSION,未登錄,則同樣跳轉到SSO,SSO取到本地SESSION的用戶名,返回給B已登錄。B寫本地SESSION。完成登錄過程。
5、A登出時,先殺本地SESSION,調用SSO的殺全局SESSION方法,SSO清空本地SESSION,同時也清空應用B的SESSION,完成單點登出。
⑥ 關於JAVA WEB中登陸過濾器的問題
你先把過濾器new出來,再調用不就好了
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=gbk");
PrintWriter out = response.getWriter();
String name = request.getParameter("username");
String password = request.getParameter("password");
HttpSession session = request.getSession();
if(name.equals("admain") && password.equals("admain")){
session.setAttribute("usertype", "admain");
Fileter f=new Fileter();
f.doFilter(request,response,chain);//反正你先把過濾器new出來,再調用不就好了,具體的屬性看實際情況,我是手寫代碼,難免有錯
}else{
out.print("<a href=Admain.html>用戶頁面</a>");
}
}
⑦ java web登陸狀態過濾器 圖片也被攔截了,怎麼辦
在過濾來器中添加代碼源String uri = request.getRequestURI();
過濾uri後綴是.js,.css的不進行校驗就好了,另外一種方法則相反,判斷你要的後綴,然後過濾,其他的都放行
⑧ java filter 登錄進入死循環
沒有解釋?什麼意思?登錄進入過濾器,過濾器檢測到沒有登錄又返回登錄界面?無法進入JDBCController類?在web.xml的配置里不讓它過濾login.do就ok了。
⑨ 如何用java過濾器是不要把login.jsp頁面也過濾掉
|public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest hrequest = (HttpServletRequest) request;
String uri = hrequest.getRequestURI();得到請求地抄址
String file[] = uri.split("/");通過/分隔,這樣,數組的最後一個值,就是頁面,
你比較下file[file.lenght-1].equals("login.jsp")就可以了。
if(file[file.lenght-1].equals("login.jsp"||)){}要解除某頁面的過濾,用||在if裡面添加就可以
chain.doFilter(request, response);
}
為了讓層次跟清晰一點,最好還是分文件夾。