java登陆验证模块的实现及小结

java登陆验证模块的实现及小结

ID:35294610

大小:37.50 KB

页数:3页

时间:2019-03-23

java登陆验证模块的实现及小结_第1页
java登陆验证模块的实现及小结_第2页
java登陆验证模块的实现及小结_第3页
资源描述:

《java登陆验证模块的实现及小结》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、登陆验证模块的实现登陆页面验证首先是验证账号,验证码是否填写,密码长度是否符合要求,验证码是否正确。这几个验证是通过自定义的几个$.fn扩展函数实现的($.fn.remote=Function(url,msg,msgCnt){})实现的,一般将这些自定义的函数放在一个js文件中,便于维护。自定义函数一般包含相应的提示字符串,及节点对象$(“#id”)等参数。通过函数对节点的varvalue=this.val();value是否为空或空字符串的判断,相应的改变节点text属性的值。1验证码正确验证1)验证码正确与否的验证是通过采用了Ajax

2、技术的函数实现的。对应的action的result的属性为json(result要配置ok的参数),action类要有布尔类型的名为ok的属性,通过返回值ok,更改相应的改变节点text属性的值。如:$.fn.remote=function(url,msg,msgCnt){varvalue=this.val();//获得表单提交的数据,如你所填入的验证码/资费名称varname=this.attr("name");//获得表单名称,如验证码文本框的name:verifiCodevarb=

3、false;$.ajax({url:url+"?"+name+"="+value,dataType:"json",async:false,success:function(data){if(data){$(msgCnt).text("");b=true;}else{$(msgCnt).text(msg);}}});returnb;};2)验证码的点击更新是利用了result=stream的属性(要配置name="inputName",name="contentType"的参数),点击发送请求,对应的action(该类必须有InputStr

4、eam类的属性,且名字要和result相应参数的属性值相同)生成验证码并存入session。2账户和密码的验证当前面一系列的验证结果都满足条件时,才能提交表单。可定义一个函数实现:if(b1&&b2&&b4){$("#loginForm").submit();}相应action接受到数据后,根据账户和密码调用DAO的相关方法,查询返回admin。如果admin存在则转发到主页面(通过result在admin的不同状态下返回的字符串实现不同的type="redirectAction"),此时将admin存入session。为后面的登陆检查验

5、证做准备。session.put(KEY_ADMIN,admin);如果不存在就,还是停留在登陆页面。3检查登陆验证。为了防止未登录而访问数据,通过struts2的自定义拦截器功能实现登陆检查验证。可通过实现接口Interceptor或者抽象类AbstractInterceptor,我选择继承AbstractIntercepto,相对较简洁。在接口定义的方法intercept(ActionInvocationin)实现验证逻辑。通过ActionInvocation的getInvocationContext()方法获得action上下文对象

6、ActionContext。通过action上下问对象获得session对象,在session对象中获取admin对象:Adminadmin=(Admin)session.get(Constants.KEY_ADMIN);如果admin为空,则通过return返回字符串及全局result回到登陆页面。如果admin不为空,则通过ActionInvocation对象调用invoke()方法,调用后面的action。权限管理:每个用户具有不同的角色,不同的角色具有不同的权限。当用户登陆的时候,根据用户对象取得用户所具有的角色,根据角色id在p

7、rivileges.xml(通过privilegereader类)文件中获得用户具有的所有权限,然后将此所有权限的集合存入session。当用户每一次发送请求时都要通过拦截器,在拦截器中截取用户的请求路径(request.getServletPath()),并检查是否存在于session中的用户所具有权限中。如果没有就返回到提示页面,如果有就调用invoke()方法执行后面的action,result。拦截器的配置:1.首先注册拦截器

8、ss.interceptor.CheckLoginInterceptor">2.然后定义拦截器栈,将默认拦截器栈也加进来。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。