浏览 3541 次
锁定老帖子 主题:登陆后跳转到之前页面
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-05-13
最后修改:2011-05-13
一、非集群 在非集群的情况下,我们一般用session来管理用户的,一般的框架都会有拦截器或安全处理,在此我只写个大致方法和思路,具体的类就不写了,
public byte[] doLogin(HttpServletRequest req) { StringBuilder builder = new StringBuilder(); Enumeration result = req.getAttributeNames(); //获取该请求的参数为还原做准备 while (result.hasMoreElements()) { String attri = (String) result.nextElement(); builder.append(attri).append("=").append( req.getAttribute(attri).toString()).append(",");//此处用","隔开每个参数,用&时在页面会出错 } String returnUrl = req.getRequestURL() + "?" + builder.toString(); req.setAttribute("returnUrl", returnUrl); }
login页面
<form id="logForm" method="post" action="login">
//此处记录将要登陆后的将要返回的页面url
<input type="hidden" name="returnUrl" value="${ param.returnUrl }"/>
<div>用户名:<input type="text" maxlength="25" name="userName" id="userName" /></div>
<div>密 码:<input type="password" maxlength="50" name="password" id="password" /></div>
<div id="buttonBar">
<input value="确定" type="submit" />
<div class="clear"></div>
</div>
</form>
<div id="info"> </div>
</div>
<script language="javascript">
<!--
(function(){
$("#logForm").form({
userName:{
cls:"largerInput",
validate:function(){
return $(this).val().length>2;
},
validateText:"请输入3-8个字符"
},
password:{
cls:"largerInput",
validate:function(){
return $(this).val().length>4;
},
validateText:"请输入5-10个字符"
}
});
})();
-->
</script>
登陆后跳转
//之前的登录判断没写,执行到这步时已经登录上了 public void Login(HttpServletRequest req,HttpServletResponse resp){ String returnUrl = (String) req.getAttribute("returnUrl"); if(null != returnUrl || !returnUrl.equals("")){ returnUrl = returnUrl.replace(",", "&"); resp.sendRedirect(returnUrl); }else{ resp.sendRedirect(req.getContextPath() + "/home"); } }
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |