准备工作
开发环境准备
开发工具:eclipse 4.3
技术语言:Java SE 1.7
依赖控制:Maven 3.0.4
服务器:Tomcat 7.0.68
操作系统:Windows 10
搭建一个web项目
项目需求
实现一个标准的用户登录注册功能,详细需求见easyPassport需求说明。
开发实现
设计架构思想
设计架构图.jpg
如上图所示,由Servlet提供后台服务,由JSP完成前端的数据展示,JavaBean作为数据存储和传输的介质,并最终持久化至数据库。
模版层设计实现
创建用户信息表:
用户信息表用来保存和记录用户的信息
create table users{
id int,
userid varchar(50),
username varchar(50),
email varchar(50),
phone varchar(11),
password varchar(50),
status varchar(2),
create_datet varchar(20),
mod_datet varchar(20),
func_arr varchar(20) default '00000000000000000000'
}
对应的数据字典:
字段
数据类型
字段说明
是否可以为空
备注
id
int
数据库主键ID
否
数据自动生成
userid
varchar(50)
业务主键ID
否
根据业务规则生成的主键ID
username
varchar(50)
用户名称
否
用户注册时输入的用户名
varchar(50)
用户邮箱
否
用户注册时输入的邮箱
phone
varchar(11)
手机号
是
手机号的相关功能本期暂不涉及
password
varchar(50)
密码
否
密码保存用户密码
status
varchar(2)
用户状态:0-正常;1停用
否
create_datet
varchar(20)
用户创建时间
否
mod_datet
varchar(20)
用户修改时间
是
func_arr
varchar(20)
特殊状态位
是
用来区分特殊也属性的用户
JavaBean、JDBC和DAO
JavaBean是数据传输的介质,JDBC是Java应用连接数据库的标准实现,DAO(Data Access Objects)则提供了对原子表的增删查改等功能。三者共同组成了一个Java应用的模版层(也叫持久层)。
JavaBean的实现
public class User implements Serializable{
private static final long serialVersionUID = 1L;
private long id;
private String userId;
private String userName;
private String email;
private String phone;
private String password;
private String status;
private String createDatet;
private String mo