用户登录案例步骤

一、创建JAVA EE项目

JAVA EE版本:7
Tomcat服务器版本:8.5.31
项目名称:userlogin_project
修改访问的虚拟目录为:/userlogin
修改端口号为:80


二、前端

1、在蓝圈web下新建一个login.html
2、编写用户名和密码两个参数
注意:form表单的action属性暂时先空着,在下面写了LoginServlet类后再回来写!格式为:/虚拟目录路径/资源路径


三、后端


1、开启MySQL服务,连接数据库,创建testdb数据库,创建User表
QQ图片20200709214440.png
2、在src目录下新建一个包:wrj.domain,在包下创建一个User实体类


3、在蓝圈web包内新建一个名为WEB-INF包,!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!再建一个lib包!!将相关jar包导入lib包!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
MySQL驱动jar包、Druid连接池jar包、JDBCtemplate jar包
4、将druid连接池配置文件导入src目录下,并修改相应值
5、在src目录下新建一个包:wrj.util,在包下创建JDBCUtils工具类,并复制之前写好的工具类代码到该类即可!
QQ图片20200709220438.png


接下来要知道一件事情:
我们最后要在Servlet里面,根据数据库里已有的数据对来自浏览器的用户名和密码进行比对!那么,问题来了,数据库里的用户名和密码数据是非常多的,我们肯定得编写代码来将其封装成User对象再与来自浏览器的用户名和密码进行比较!
而操作数据库将数据封装成实体类的代码量非常大,不可能写在Servlet里面,所以,我们必须重新写一个操作数据库将数据封装成实体类的一个类!然后在Servlet里调用就行了!
6、在src目录下新建一个包:wrj.dao,在包下创建一个UserDao类操作数据库将数据封装成User类
QQ图片20200709231702.png
7、写完dao包下的UserDao类后养成好习惯,测试一下:
在src目录下新建一个包:wrj.test,在包下创建一个UserDaoTest类
手动创建User对象和UserDao对象,调用judgeUserExist( )方法,看看是否可以从数据库中查找到数据!
QQ图片20200709231747.png


接下来要再知道一件事:
由于第6步的UserDao类里的judgeUserExist( )方法传入的是一个User对象作为参数,所以,就必须在Servlet里面,将来自浏览器输入的用户名和密码封装成User对象才行!这里用到了BeanUtils工具类来简化封装的操作!
8、在src目录下新建一个包:wrj.web.servlet,在包下创建一个LoginServlet类,并前往login.html补充form表单的action路径
QQ图片20200710004151.png
9、登录成功则请求转发(跳转)到/successServlet,失败则跳转到/failServlet,所以继续在wrj.web.servlet包下创建两个个Servlet类
QQ图片20200710004154.png
QQ图片20200710004157.png


成功了!!!!!!!!!!!!!!!!!!!!!!!!
QQ图片20200710004306.png
QQ图片20200710004312.png