日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

在jsp中怎么實現登錄后,自動跳轉到登錄前正瀏覽的頁面

 燮羽 2010-10-28
在jsp中怎么實現登錄后,自動跳轉到登錄前正瀏覽的頁面?就像csdn的一樣,
不管你從哪能個頁面登錄,成功登錄后會自動跳轉回那個頁面。
解決方法一:
登錄處理后,返回如下內容:  
 2 PrintWriter out = response.getWriter();
 3 
 4 out.println("<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.01 Transitional//EN"">");
 7 
 8 out.println("<HTML>");
 9 
11 
12 out.println("  <BODY>");
13 
16 out.println("<script>history.go(-1);history.go(0);</script>");
19 
20 out.println("  </BODY>");
21 
22 out.println("</HTML>");
23 
24 out.flush();
25 
26 out.close();
27 
28 return null
29 
解決方法二:    

1
 String referer = req.getHeader("Referer");
2 resp.sendRedirect(referer);
3 return;
4 
5 
上面兩種方法不可取是因為,如果用戶登錄失敗,再次登錄的話就會出現登錄后返回到登錄的錯誤。

第三種:把你要在跳轉時需要保存的信息存放在session變量中,登錄后清除這個session??尚小?br> 需要登錄操作的頁面上面添加:
1 <%
2     if(session.getAttribute("party")== null){
3         if(null != request.getQueryString())
4             session.setAttribute("redirectUrl", request.getRequestURL().append("?").append(request.getQueryString()).toString());
5         else
6             session.setAttribute("redirectUrl", request.getRequestURL().toString());
7         response.sendRedirect(request.getContextPath() +  "/loginto");
8     }
9 %>
在登錄處理頁面:

1 String redirectUrl = (String)req.getSession().getAttribute("redirectUrl");
2         if(StringUtils.isValid(redirectUrl)){
3             req.getSession().removeAttribute("redirectUrl");
4             resp.sendRedirect(redirectUrl);
5         }
第四種方法:寫一個servlet會話判斷類,如果在線就繼續(xù)執(zhí)行,不在線則提示登錄。所有的需要在線操作的
servlet都集成此類,這樣就不需要上面那么在每個頁面寫上這些代碼了,可以集中控制。這種方式比較完整。

HttpSession session = request.getSession();

if (session.getAttribute("person"== null
{
     
if (null != request.getQueryString())
                session.setAttribute(
"redirectUrl", request.getRequestURL().append("?").append(request.getQueryString()).toString());
     
else
                session.setAttribute(
"redirectUrl", request.getRequestURL()
                        .toString());
     response.sendRedirect(request.getContextPath() 
+ "/login.jsp");
     
return null;
 }

return process(config, request, response);

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多