zoukankan      html  css  js  c++  java
  • javaWeb——Servlet(二)

    Servelet登录页面步骤:

    • 浏览器访问http://127.0.0.1/login.html
    • 浏览器通过form把账号和密码提交到/login(通过action),附带method="post"
    • Tomcat接受到请求:http://127.0.0.1/login,根据配置文件web.xml匹配发现/login对应的Servlet类是LoginServlet
    • Tomcat调用LoginServlet的public无参的构造方法LoginServlet()实例化一个LoginServlet对象
    • Tomcat据页面login.html提交信息的时候带的method="post",去调用对应的doPost方法
    • Servlet在doPost方法中,通过参数request,把页面上传递来的账号和密码信息取出来
    • Servlet根据账号和密码是否正确(判断是否是admin和123), 创建不同的html字符串
    • Tomcat拿到被Servlet修改过的response,根据这个response生成html 字符串
    • Tomcat通过HTTP协议将html字符串回发给浏览器
    • 浏览器根据HTTP协议获取html字符串,并渲染在界面上

    Servelet生命周期:

    • 实例化:用户通过浏览器输入路径时,调用构造方法LoginServlet()
    • 初始化:调用init(ServletConfig)
    • 提供服务:执行service(),根据浏览器传递来的信息判断调用doGet()还是doPost()
    • 销毁:调用destroy(),如关闭Tomcat时
    • 被回收:通过GC回收

    Servlet页面跳转:

    • web目录下创建两个页面success.html,fail.html
    • 登录成功则服务端跳转到success.html(跳转后地址栏信息不变)
    • 登录失败则客户端跳转到fail.html(跳转后地址栏信息变为跳转后的地址)

                   

    Servlet自启动:

    • tomcat一启动,就需要执行一些初始化的代码,比如校验数据库的完整性等
    • 但是Servlet的生命周期是在用户访问浏览器对应的路径开始的。如果没有用户的第一次访问,就无法执行相关代码
    • 这个时候就需要Servlet实现自启动。即,伴随着tomcat的启动,自动启动初始化,在初始化方法init()中,进行一些业务代码工作

    Servlet上传文件:

    • form的method必须是post的,get不能上传文件
    • enctype="multipart/form-data"表示提交的是二进制文件
    • 提供type="file"用于上传
    • 加载第三方jar包commons-io-1.4.jar和commons-fileupload-1.2.2.jar
  • 相关阅读:
    AngularJs用户登录的一些处理
    百度地图api-查询周边
    Git常用命令整理
    AngularJs控制器运行前方法,操控导航栏隐藏
    AngularJs中,如何在数据加载完成后,执行Js脚本
    ZZ:Linux的chattr与lsattr命令详解
    ZZ:实战 SSH 端口转发
    Python 删除 恢复 Redshift
    [原创]Python 命令 恢复 删除 RDS
    AWS CLI 命令学习 之 bat 控制EC2 启停
  • 原文地址:https://www.cnblogs.com/cxc1357/p/12024615.html
Copyright © 2011-2022 走看看