使用JSP+Servlet+MVC+JDBC+JS实现用户登录校验、登录成功后三天免登录及可打印数据库信息

MySQL驱动及JQuery文件:

链接:https://pan.baidu.com/s/10RNLJ4dwxEoJYUUE32Q9qw 
提取码:fpqr 
 

一、需求:

1、用户访问主登录页面,可填写登录信息并提交。

2、根据用户提交信息查询数据库中进行用户校验。

3、校验失败,主登录页面给提示信息。

4、登录成功,则显示登录成功页面。3天之内每次访问主登录页面即刻跳转登录成功页面。

5、在登录成功页面有一个查询数据库所有信息的按钮,一点击按钮,则立马显示数据库所有用户数据。

二、实现思路

1、三个jsp文件作页面显示,三个servlet作页面之间跳转的逻辑判断。

2、LoginServlet进行主登录页面显示之前的逻辑判断:

                A、如果之前登录成功,通过浏览器cookie中的uid查询用户信息,重新缓存session,然后重定向登录成功页面succeed.jsp;

                B、如果之前未登录成功,则请求转发主登录页面login.jsp。

3、login.jsp显示主登录页面,采集用户输入的用户名和密码信息,数据提交给CheckServlet。

4、CheckServlet对用户输入的数据进行校验:

               A、校验成功则将该用户信息以session的形式存储,同时响应给浏览器一个三天有限的存储着用户编号的cookie;然后重定向到succeed.jsp。

              B、校验失败则给request对象打一个标记,请求转发到login.jsp(login.jsp显示主登录页面时如果能拿到该标记,则提示用户名或密码错误)。

5、succeed.jsp进行登录成功的页面展示,提示“某某用户登录成功”。

注:以上可实现用户登录校验及三天免登录需求

---------------------------------------------------------------------------------------------------------------------------------------------

6、在succeed.jsp登录成功页面有一个查询数据库所有用户信息的按钮,一点击则立马重定向到ShowAllServelt。

7、ShowAllServelt根据用户可查询数据库中用户的所有信息,返回一个List集合,该List集合存储在request对象中,然后请求转发ShowAll.jsp。

8、ShowAll.jsp通过request对象拿到List集合,然后遍历输出所有用户信息。

三、部分运行效果图

1、主登录页面(未登录时)

2、主登录页面(登录失败时)

3、登录成功页面

4、显示所有用户信息页面

注意:请注意我的地址栏信息哦。

 

四、具体实现

前置:导入数据库驱动的jar包,引入JQuery文件(事件触发我使用JQuery写的)

1、MySQL文件

use d_student;

create table t_user(
	uid int auto_increment primary key,
	uname varchar(20),
	pwd varchar(20)
)charset=utf8;

insert into t_user values(default,'张三','123456');
insert into t_user values(default,'李四','123456');

select * from t_user;

2、配置文件

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>04-login</display-name>
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>com.imooc.servlet.LoginServlet</servlet-class>
  </servlet>


  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>CheckServlet</servlet-name>
    <servlet-class>com.imooc.servlet.CheckServlet</servlet-class>
  </servlet>
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>ShowAllServlet</servlet-name>
    <servlet-class>com.imooc.servlet.ShowAllServlet</servlet-class>
  </servlet>






  <servlet-mappin
  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二百四十九先森

你的打赏是我努力的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值