第5章 登录功能实现-LoginServlet

5.1 涉及的技术知识点

  1. Servlet
  2. Request请求对象
  3. Response响应对象

5.2 什么是Servlet?

  1. Servlet是Sun公司制定的一套技术标准,包含与Web应用相关的一系列接口,是Web应用实现方式的宏观解决方案。而具体的Servlet容器负责提供标准的实现。
  2. Servlet作为服务器端的一个组件,它的本意是“服务器端的小程序”。Servlet的实例对象由Servlet容器负责创建;Servlet的方法由容器在特定情况下调用;Servlet容器会在Web应用卸载时销毁Servlet对象的实例。
  3. 简单可以理解为 Servlet就是用来处理客户端的请求的.

5.3 Servlet开发规则

  1. 实际编码通过继承HttpServlet来完成Servlet的开发

5.4 Servlet类的相关方法:

  1. doGet Servlet中用于处理get请求的方法
  2. doPost Servlet中用于处理post请求的方法
  3. service
    ① 在Servlet的顶层实现中,在service方法中调用的具体的doGet或者是doPost
    ② 在实际开发Servlet的过程中,可以选择重写doGet以及doPost 或者 直接重写service方法来处理请求。

5.5 Servlet在web.xml中的配置

5.6 获取请求参数值

  1. HttpServletRequest
    ① 该接口是ServletRequest接口的子接口,封装了HTTP请求的相关信息,由Servlet容器创建其实现类对象并传入service(ServletRequest req, ServletResponse res)方法中。以下我们所说的HttpServletRequest对象指的是容器提供的HttpServletRequest实现类对象。
    ② HttpServletRequest对象的主要功能有
    获取请求参数
    在请求域中绑定数据
    将请求转发给另外一个URL地址 [转发]

5.7 响应结果

  1. HttpServletResponse
    ① 该接口是ServletResponse接口的子接口,封装了HTTP响应的相关信息,由Servlet容器创建其实现类对象并传入service(ServletRequest req, ServletResponse res)方法中。以下我们所说的HttpServletResponse对象指的是容器提供的HttpServletResponse实现类对象
    ② 主要功能
    使用PrintWriter对象向浏览器输出数据
    实现请求的重定向[重定向]

5.8 具体登录功能的实现步骤

  1. 在登录页面中录入用户名和密码,点击登录按钮提交登录请求
  2. 在LoginServlet中通过request对象获取到页面表单提交的用户名和密码
//获取用户输入的用户名和密码
String username =  req.getParameter("username");
String password =  req.getParameter("password");
  1. 调用Dao对象,将用户提交的用户名和密码与数据库的用户表的数据进行匹配
UserDao dao = new UserDaoJdbcImpl();
User user = dao.findUserByUsernameAndPassword(username, password);
  1. 得出结果,完成响应.
//设置响应头信息
resp.setContentType("text/html;charset=utf-8");
//获取输出流
PrintWriter  out = resp.getWriter();
if(user == null ) {//登录失败out.println("登录失败!!!!");
}else {//登录成功out.println("登录成功!!!!");}
out.close();

快速学习-登录功能实现-LoginServlet相关推荐

  1. 简单登录功能(一)token的使用

    目录 1.token介绍 2.前端代码 3.后端代码 1.token介绍 前端使用的layui,通过ajax异步提交表单来实现登录,刚好学习巩固一下ajax,后端主要学习一下token的使用. tok ...

  2. JavaWeb-综合案例(用户信息)-学习笔记02【登录功能】

    Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb-综合案例(用户信息)-学习笔记01[列表查询] JavaWeb-综合案例(用户信息)-学习笔记02[登录功能] JavaWeb-综合案 ...

  3. 【学习日记2023.5.8】之 springboot案例之登录功能(会话技术_JWT令牌_过滤器_拦截器)

    文章目录 1. 案例-登录认证 1. 1登录功能 1.1.1 需求 1.1.2 接口文档 1.1.3 思路分析 1.1.4 功能开发 1.1.5 测试 1.1.6 全后端联调 1.2 登录校验 1.2 ...

  4. Spring Boot 快速集成第三方登录功能

    Spring Boot 快速集成第三方登录功能 前言 此 demo 主要演示 Spring Boot 项目如何使用 史上最全的第三方登录工具 - JustAuth 实现第三方登录,包括 QQ 登录.G ...

  5. Vue + Spring Boot 学习笔记02:引入数据库实现用户登录功能

    Vue + Spring Boot 学习笔记02:引入数据库实现用户登录功能 在学习笔记01里,我们利用跨域打通了前端的Vue与后端的Spring Boot,实现了用户登录功能,但是后台的登录控制器在 ...

  6. Vue + Spring Boot 学习笔记01:实现用户登录功能

    Vue + Spring Boot 学习笔记01:实现用户登录功能 一.创建后端Spring Boot项目Book Management 二.创建前端Vue项目bm-vue 三.修改后端项目Book ...

  7. java 记录用户_JavaWeb学习记录(六)——用户登录功能

    使用JDBC.spring框架.servlet实现一个简单的用户登录功能. 一.mySql数据库 SET FOREIGN_KEY_CHECKS=0; -- ---------------------- ...

  8. 【PHP学习】—利用ajax原理实现登录功能(八)

    [PHP学习]-利用ajax原理实现登录功能(八) 通过学习上篇文章我们发现这种方法存在了一定的缺陷,利用页面跳转,HTML页面访问服务器,要等待服务器响应,账号密码输入错误后,还要回退页面重新输入账 ...

  9. zz 传苹果平板电脑的UI界面将具备“快速学习”功能

    据Cultofmac网站得到的消息,苹果平板电脑产品所使用的操作界面UI将具备快速学习功能,能够在短时间内自动"学习领会"用户惯用的操作模式,并根据用户的习惯来设置平板电脑的操作界 ...

最新文章

  1. PHP Webservice的发布与调用
  2. 自从上线了 Prometheus 监控告警,真香!
  3. 表达式类型的实现_程序员如何使代码简洁,Lambda表达式入门之四大引用(下篇)...
  4. 英特尔nuc能代替主机吗_制砂机生产的沙子可靠吗?能代替天然沙子吗?
  5. 串口使用stream_使用SerialPort库进行Node物联网项目开发
  6. SpringCloud-Eureka-服务注册是如何发起的
  7. vb 获取mysql表第一行数据_vb如何将远程获取的数据插入本机数据表中
  8. oracle 打开 ctl,Oracle 19c 随系统systemctl启动数据库
  9. 编译安装mysql5.5.39_编译安装MySQL5.5
  10. 在android中ScrollView嵌套ScrollView解决方案
  11. 模拟退火与遗传与蚁群算法
  12. 非常好用的游戏数据保存类:ScriptableObject
  13. 自定义tableView的section header/footerView时的view复用问题
  14. 【目标检测】YOLOv5跑通VOC2007数据集
  15. 苹果笔记本装win7_小白“复活记”,十多年前的MacBook,曲折安装Win7
  16. java ing印版,Be alaways javaing...
  17. sql语句的各种模糊查询
  18. XML解析为Document对象
  19. java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to
  20. Ironic注册/部署/inspect/clean节点操作记录

热门文章

  1. 【资料合集】2018云栖大会上半年深圳、南京、武汉、上海峰会全记录
  2. 【无标题】旧金山大学算法可视化网站
  3. 58同城实时计算平台架构实践
  4. 公开募集催生Namco Bandai(南梦宫万代)的预售实验
  5. thinksns java_社交APP系统ThinkSNS+技术概要
  6. 十七、打码平台的使用
  7. 解决eclipse出现This Android SDK requires Andro...date ADT to the latest version.问题
  8. html编写阶乘,阶乘的实现
  9. 二、基础SpringBoot2.0.0M4项目目录讲解
  10. anaconda安装、部署、卸载——Mac