java 用户登录模块_登录模块的实现

1、模块介绍

以JSP+Servlet+JavaBean模式进行开发,系统流程图如下:

用户登录之前需要进行注册,在注册成功后通过注册的用户名和密码进行登录,登录失败可以根据系统提示重新登录,登录成功后进入主页。

java 用户登录模块_登录模块的实现_第1张图片

2、关键技术

本实例采用MVC模式进行开发,战士了模型层(Model)、视图层(View)和控制层(Controller)的结构体系,程序设计结构如下图所示:

程序为用户提供了JSP页面进行战士,如用户注册页面reg.jsp、用户登录页面login.jsp等。这些JSP页面是程序的视图层(View),对于用户而言,通过这一层与程序进行交互,同时交互后的结果也是通过这一层回应给用户。

用户对程序的请求以及程序对用户所作出的回应由控制层(Conrtroller)掌管,本实例中表现为Servlet,如用户注册Servlet、用户登录Servlet等。当用户发送一个请求时,Servlet将判断用户的请求类型,进而提供相应的业务逻辑处理方法进行处理;请求由程序处理完毕后,又由Servlet控制返回处理的结果信息。此层也是程序的核心部分。

java 用户登录模块_登录模块的实现_第2张图片

3、数据库设计

本实例只涉及一数据表,名称为tb_user。此表为用户信息表,用于存放用户的注册信息,其结构如图表示:

Column Name

Datatype

NOT NULL

AUTO INC

Default Value

Comment

id

Integer

null

主键

username

varchar(45)

null

用户名

password

varchar(45)

null

密码

sex

varchar(45)

null

性别

photo

varchar(45)

null

头像

email

varchar(45)

null

邮箱

tel

varchar(45)

null

联系电弧

4、JavaBean设计

本实例设计3个主要的JavaBean组件,分别为用户实例对象User、用户数据库操作对象UserDao类、数据库连接工具类DataBaseUtil。

①、用户实体对象

User类用于封装用户尸体对象,提供了用户对象的详细信息以及相应的get和set方法。

②、数据库连接工具类

对于经常用到的操作可以将其封装一个类,在类中提供了相应的操作方法,从而增强了代码的重用性。

③、用户数据库操作

与用户相关的数据库操作方法封装在UserDao类中,此类提供了实例中所用到的数据添加和查找方法,其中userIsExit()方法用于查找指定用户名在数据库是否存在,返回布尔值。

在用户提交注册信息时,需要判断所提交的用户名是否已被注册,如果用户名已被占用则不能再次被注册。用户名是用户信息的标识,在提交注册信息时可以使用userIsExit()进行判断

用户提交注册信息后,需要对用户信息进行持久化,以保证用户凭其信息可以登录。这就需要在UserDao类中提供用户信息持久化的方法,其名称为saveUser()。

注册成功后,用户即可通过注册的用户名及密码进行登录。对于程序而言,此操作实质就是根据用户所提供的用户名及密码查询用户信息,如果查询成功,证明在数据库中存在于之匹配的信息,则登录成功。这一操作通过UserDao类的login()方法实现。

5、实现过程

①用于注册

创建名为RegServlet的类(即处理用户注册请求的servlet对象),通过doPost()方法对用户注册请求 进行处理。在处理过程中,首先通过request获取用户的注册信息,然后通过UserDao类的userIsExit()方法判断所提交的用户名是否已被注册,如果没有注册则将用户提交的注册信息写入数据库中,否则进行错误处理;对于用户注册的结果信息由mesage.jsp页面予以显示。

创建视图层(为用户提供的注册页面),名称为reg.jsp,在其中提供给用户注册的表单。此表一post提交方式将请求发送到RegServlet,RegServlet类将根据用户提供的用户信息进行相应处理。

②用户登录

创建名为LoginServlet的类(即处理用户登录请求的Servlet),通过doPost()方法对用户登录进行处理。在获取用户提供的用户名和密码后,通过UserDao类的login()方法查询用户信息,如果查询到的用户信息不为null,则用户登录成功,将获取到的用户对象写入到Session中,否则进行相应的错误处理。

创建视图层(为用户提供的登录页面),名称为login.jsp,在其中提供登录表单。

③用户退出

用户退出请求由UserExitServlet类进行处理,它是一个Servlet对象。此类通过doGet()方法对退出请求进行操作,此操作需要将存放在session中的User对象逐出。

④提示信息页面

程序在处理业务请求后,需要告知用户处理结束,如用户注册成功、用户登录失败等,所以实例中提供了message.jsp页面。

⑤Servlet配置

你可能感兴趣的:(java,用户登录模块)