博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
登陆验证表单原理
阅读量:6208 次
发布时间:2019-06-21

本文共 955 字,大约阅读时间需要 3 分钟。

22:25 2014/5/11

javaweb中表单登陆验证:表单验证原理都一样,不过struts2提供了validate方法。 没有Form表单类的登陆都是简单的登陆

1.通常把用户名密码为为不为空和用户名长度和密码长度写到Form表单类里通常叫做validate方法返回值为Map<String, String>类型 在LoginServlet里调用下就行,通常用webutils里的转换成bean方法得到Form类的对象,不用自己创建Form的实例更不用什么get/set那是stuts2的方式,要是不用Form类通常都是简单的校验不用校验用户名密码的空不空及长度,直接用request.getParameter("")方法得到表单的用户名和密码而不是通过webutils去封装表单的参数,简单校验不调用validate方法,不用封装了。

2.验证用户为不为空在调用Form类的validate方法下面一步,虽然登陆要用户名和密码我们两个参数先都获取都往后台传,到service层就只用用户名(目的是在逻辑层校验用户为不为空)然后用用户名为参数去数据库找对应的用户,不管你用用户名找到一个还是多少个同样名字的用户最后返回到controller控制层都要一个用户,最好不要在dao层遍历得到的集合用户而是在业务层service曾,service层不应该有sql语句但是可以组织sql语句所需要的参数。没有Form类的这就算登陆验证的第一步,建议有Form类,看起来更规范。为空说明用户不存在,不为空将user设置到与对象中通常是request域然后转发。验证失败回到login页面,步骤二最好在service层校验严格MVC  /*   * 使用参数username查找User对象   * 判断user是否存在,如果不存在,说明登录用户名错误!// 也就是后台校验失败,(用户名错误)可以在控制层处理异常   * 如果存在,判断返回的user的password与登录password是否相同   * 如果不相同,说明登录密码错误   * 都相同了,返回user对象,表示成功!   */

3.dao层要是查到空用户返回空的用户。

 

转载于:https://www.cnblogs.com/YingYue/p/3741901.html

你可能感兴趣的文章
NYOJ 35
查看>>
SPOJ 1693 Coconuts
查看>>
java IO 流的学习(我们到底能走多远系列1)
查看>>
Linux Socket学习--域和地址族
查看>>
Objective-C调用C++代码
查看>>
ActivityManager
查看>>
推荐3款热门特惠(幻灯、WP插件、主题等等)
查看>>
HDU 4122 Alice's mooncake shop(RMQ,或者单调队列)
查看>>
对makefile 中的 静态模式规则的理解
查看>>
关于我的几个博客
查看>>
分享精心收藏的60套精美的日历PSD源文件
查看>>
MongoVUE的使用
查看>>
mysql基本语句
查看>>
box2d 刚体的重心设置
查看>>
HDU 1073 Online Judge (字符串处理,简单题)
查看>>
Windows8离线安装.net framework 3.5
查看>>
C#数据结构与算法揭秘十
查看>>
tomcat 内存设置
查看>>
Java eclipse调试技巧什么的。。
查看>>
[转]尾部递归(递归转循环)
查看>>