三层架构(MVC)实现简单登陆注册验证(含验证码)
来源:互联网 发布:男生帽子 知乎 编辑:程序博客网 时间:2024/05/19 06:19
前言在我的上一篇微博里我已经提出了登陆的方法,当时我采取的是纯servlet方式,因为当时刚接触到servlet,正好网上没有这方面的全面讲解,所以我就发飙了。不过在现实生产中我们大多采用的三层架构。所谓三层架构(web层+service层+dao层)。下面我就详细讲解一下
一、dao层——数据访问层
- 模拟数据库:依然像钱一张一样,我们无法将数据库拿到文档中,所以我还是模拟了数据库(Dao).只不过这里我用的是xml文件来实现数据库
<?xml version="1.0" encoding="UTF-8" ?>
<users>
<user username="Admin" password="Admin" nickname="Admin" email="1@qq.com"></user>
<user username="张新华" password="123" nickname="烟花散尽13141" email="870775401@qq.com"></user>
</users>然后再数据库中我实现了查找了和增加功能,查找呢又细分通过用户名查找和通过用户名密码查找,前者是查找后者则偏向于验证。通过后者可以验证用户名和密码是否匹配,这两个函数在后面的web层中起到关键因素。
通过用户名查找:
- `public User FindUserByUsername(String username)
{
Document dom=XmlDaoUtil.GetDom();//�õ�dom����
Element root=dom.getRootElement();
List list = root.selectNodes(“//user[@username=’”+username+”’]”);
if(list.size()>0)
{
Element userele=list.get(0);
User user=new User();
user.setUsername(userele.attributeValue(“username”));
user.setPassword(userele.attributeValue(“password”));
user.setNickname(userele.attributeValue(“nikename”));
user.setEmail(userele.attributeValue(“email”));
return user;
}
else
{
return null;
}
}`- `public User FindUserByUsername(String username)
通过用户名和密码进行验证
- public User FindUserByUNameAndPsw(String username,String password)
{
Document dom=XmlDaoUtil.GetDom();//�õ�dom����
Element root=dom.getRootElement();
List list = root.selectNodes(“//user[@username=’”+username+”’ and @password=’”+password+”’]”);
if(list.size()>0)
{
Element userele=list.get(0);
User user=new User();
user.setUsername(userele.attributeValue(“username”));
user.setPassword(userele.attributeValue(“password”));
user.setNickname(userele.attributeValue(“nikename”));
user.setEmail(userele.attributeValue(“email”));
return user;
}
else
{
return null;
}
}- public User FindUserByUNameAndPsw(String username,String password)
- 添加用户
public void AddUser(User user)
{
Document dom=XmlDaoUtil.GetDom();
Element root=dom.getRootElement();//��ȡ���ڵ�//����һ��Ԫ�ض���
Element userele=DocumentHelper.createElement(“user”);
Attribute attr1=DocumentHelper.createAttribute(userele, “username”, user.getUsername());
Attribute attr2=DocumentHelper.createAttribute(userele, “password”, user.getPassword());
Attribute attr3=DocumentHelper.createAttribute(userele, “nickname”, user.getNickname());
Attribute attr4=DocumentHelper.createAttribute(userele, “email”, user.getEmail());userele.add(attr1);
userele.add(attr2);
userele.add(attr3);
userele.add(attr4);root.add(userele);
}
- 三层架构(MVC)实现简单登陆注册验证(含验证码)
- MVC + 三层 + ASP.NET 简单登陆验证
- 简单的登陆注册的实现+验证码和表单验证
- 登陆注册时的验证码实现
- 登陆、注册 时候 验证码 验证登陆。
- MVC 登陆验证码
- 注册验证码倒计时(含源码)
- 三层架构实现登陆注册功能
- session 注册简单验证码的实现
- 简单实现手机号验证码注册功能
- Hibernate实现简单登陆验证
- Spring mvc登陆验证码
- MVC 用户登陆(验证码)
- 简单的spring mvc 异步登陆验证
- 使用jfinal 实现 登陆 注册 验证码检验
- Struts2连接数据库实现登陆(验证码)、注册
- php实现Ajax带有验证码的登陆注册功能
- java 如何实现登陆和注册的验证码功能
- iOS 上传文件
- equals VS ==
- mac 10.9下安装jdk8
- 继承JPanel的类不显示
- 读取流Demo
- 三层架构(MVC)实现简单登陆注册验证(含验证码)
- android枚举用法
- 动态添加权限navBarControl1设置 DXperience学习笔记
- c#之构造函数
- android使用zxing扫描界面全是白色以及更改显示文字屏幕居中
- Android5.1 VectorDrawable
- 类(class)和结构(structure)的认识
- AndroidStudio怎样导入jar包
- Java实现用传统分治法解决矩阵相乘问题