用户模块:
环境搭建:
1.创建数据表
2.常见web项目和包结构
3.导入jar包
4.导入配置文件(修改)
5.导入工具类
6.导入前端页面
案例1:用户注册
需求分析:
在注册页面上,当用户填写完个人信息后,点击"注册"按钮时,向服务器发送一个注册的请求,
将用户填写的信息保存到数据库中,并发送激活邮件.
技术分析:
表单:
servlet:
发送邮件:
步骤分析:
前台:
提供用户注册的表单:
路径:
/store1/user?method=register
....
后台:
web:
编写Userservlet:
//a.获取请求标识.
//b.判断请求标识
//c.调用指定方法执行
register方法:
//1.获取请求携带的所有参数信息
//2.封装到实体中
//3.调用service完成注册的业务逻辑
service.register(user);
service:
register(user){
//1.设置基本信息并添加信息
dao.register(user);
2.发送激活邮件
}
dao:
register(user){
完成用户信息添加功能.
}
案例二:账号激活.
需求分析:
当用户在邮件中点击"点击激活"超链接时,向服务器发送一个激活请求.
将该账户进行激活
技术分析:
超链接:
servlet:
步骤分析:
/store1/ user?method=active&code=4654dfsdfsgf24gfd54(随机);
后台:
WEB:
在userservlet中添加公共的active方法
//1.获取请求携带的激活码
String code ="";
//2.调用service完成用户激活功能
User user = service.active(code);
//3.判断激活结果
if(user==null){
//提示该激活码失效或者该激活码错误
}
user!=null;
SERVICE:
active(code){
//1.根据激活码查询用户信息
User user =dao.findByCode(code);
//2.查询判断结果
if(user!=null){
//激活该账户 根据UID修改用户状态
dao.active(user);
3.将user返回给WEB;
return user;
}
}
DAO:
findByCode(code){
}
active(user){
}
案例三:用户登录
需求分析::
在登录页面上,当用户填写完用户名和密码后,点击"登录"按钮时,向服务器发送一个登录请求
登录结果:
未激活;登录失败;登录成功;异常.
技术分析:
登录表单:
用户名:
密码:
步骤分析:
前台:
在登录页面上提供登录表单/store1/user?method=login
username,password
后台:
WEB:
在userservlet中添加公共的login方法
//获取用户名和密码
//调用service完成用户登录的业务逻辑
User user =service. login(username,password);
//3.
if(user==null){
用户或密码错误 登录失败
return;
}
//登录成功
SERVICE:
login(username,password){
//调用dao完成用户登录(查询);
dao.login(username,password);
}
DAO;
login(username,password){
//根据用户名和密码查询数据库
}
案例4:用户退出
需求分析:
当用户点击"注销"超链接时,想服务器发送一个注销请求,将用户登录成功的状态
从session中移出
技术分析:
清空session
生命周期:
创建:
第一次调用rsq.getsession的时候
第一次访问jsp页面的时候
销毁:
session超时
服务器非正常关闭
手动销毁
session.invalidate()
步骤分析:
前台:
给超链接绑定访问路径
/store1/user?method=logout
后台:
WEB:
在userservlet中添加公共的logout方法
//获取session对象,并将session对象销毁
//重定向到商城首页即可.