• Servlet(1)—Servlet容器tomcat和HTTP协议


    1. Servlet容器为JavaWeb应用提供运行时环境,它负责管理Servlet和JSP的生命周期,以及管理他们的共享数据。
    2. Servlet容器也称JavaWeb应用容器,或者Servlet/JSP容器。
    3. 目前最流行的Servlet容器包括:
      • Tomcat
      • Resin
      • .J2EE服务器(如weblogic)中也提供了内置的Servlet容器
    4. Tomcat
      • 是免费的开放源码的Serrvlet容器,有Apache、sun和其他的一些公司及个人共同开发而成,由于有了sun的参与与支持
        最新的Servlet和JSP规范总能在Tomcat中得到体现。
      • 其目录结构:
        bin:存放启动和关闭Tomcat的脚本文件
        conf:存放Tomcat服务器的各种配置文件
        lib:存放Tomcat服务器和所有的web应用程序需要访问的jar文件
        logs:存放Tomcat的日志文件
        temp:存放Tomcat运行时产生的临时文件
        webapps:当发布web应用程序时,通常把web应用程序的目录及文件放到这个目录下
        work:Tomcat将JSP产生的Servlet源文件和字节码文件放到这个目录下
      • 部署并启动tomcat服务器
        解压Tomcat压缩包到非空目录下
        配置环境变量,java_home(指向jdk的根目录)或jre_home
        通过bin目录下的startup.bat启动服务器(若是启动窗口一闪而过)
        可以在浏览器中输入localhost:8080检验Tomcat是否安装成功
        若已经启动了一个Tomcat应用,再启动一个应用时就会抛出异常(java.net.BindException:
        Address already in use:JVM_Bind:8080)这是因为已经启动过一个应用程序,8080端口被占用了。
      • 启动或关闭
        方法一:双击bin目录下的startup.bat,运行shutdown.bat关闭开启,
        方法二:若是想在命令提示符中bin目录下运行,需要配置环境变量JAVA_HOME=C:Program FilesJavajdk1.7.0_67
        方法三:若是想在命令提示符中任意目录下运行,需要两步,一:把apache安装路径E:riupapache-tomcat-7.0.55in添加加到path中
        二:新建一个环境变量catalina,值为E:riupapache-tomcat-7.0.55
        方法四:若是想在当前窗口运行tomcat,使用命令catalina run,关闭使用ctrl+c。
        注意catalina命令有一下可选参数:
        commands:
        debug Start Catalina in a debugger
        debug -security Debug Catalina with a security manager
        jpda start Start Catalina under JPDA debugger
        run Start Catalina in the current window
        run -security Start in the current window with security manager
        start Start Catalina in a separate window
        start -security Start in a separate window with security manager
        stop Stop Catalina
        configtest Run a basic syntax check on server.xml
        version What version of tomcat are you running?
      • 修改端口号
        在conf目录下,打开server.xml,在67多行,找到
    <role rolename="manager-gui"/>
            <user username="tomcat" password="s3cret" roles="manager-gui"/>

    5 . HTTP协议

    • 介绍:Web浏览器和Web服务器之间的一问一答的交互过程,必须遵循一定的规则,这个规则就是HTTP协议。
      HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议集中的一个应用层协议,用于定义
      Web浏览器与web服务器之间交换数据的过程以及数据本身的格式。
      HTTP协议版本:HTTP/1.0、HTTP/1.1、HTTP/NG

    • 会话方式
      建立链接
      发出请求信息
      回送应信息
      关闭链接
      浏览器与web服务器之间的所有的通信都是完全独立分开的请求和响应对

    • HTTP请求消息结构
      一个请求行、若干消息头、以及实体内容,其中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。
    • get请求和post请求
      响应消息的实体内容就是网页文件的内容,也就是在浏览器中使用查看源文件的方式所看到的内容,一个使用get方式的请求
      消息中不能包含实体内容,只有使用post、put和delete方式的请求消息中才可以包含实体内容 。
      get
      在浏览器中输入某个URL地址,或者单击某个超链接时浏览器发送的HTTP请求消息的请求方式为GET请求,超链接是一个get请求。
      或者在form表单中method属性的值设置为get,浏览器提交的这个请求也是get请求
      get方式特点:传送的数据量有限制的,一般限制在1Kb以下,get请求把请求参数附着在url后边用问号连接
      get方式传递参数格式:
      http://localhost:8080/Demo4/loginServlet?user=tengpengfei&password=817425

      post
      post请求方式主要用于向web服务器端程序提交form表单中的数据,post请求方式将各个表单字段元素,以及数据作为HTTP消息的实体内容发送给web服务器。
      form表单指定请求方式为post时
      post方式特点:比get方式传送的数据量要大得多。

  • 相关阅读:
    APEX安装
    SNN对抗攻击笔记
    Exploring Adversarial Attack in Spiking Neural Networks with Spike-Compatible Gradient
    Inherent Adversarial Robustness of Deep Spiking Neural Networks: Effects of Discrete Input Encoding and Non-Linear Activations
    NeuroAttack: Undermining Spiking Neural Networks Security through Externally Triggered Bit-Flips
    Training spiking neural networks for reinforcement learning
    Kernel methods on spike train space for neuroscience: a tutorial
    Eligibility Traces and Plasticity on Behavioral Time Scales: Experimental Support of neoHebbian Three-Factor Learning Rules
    python操作MySQL数据库
    连接mysql报错:error 2003 (hy000):can't connect to mysql server on 'localhost' (10061)
  • 原文地址:https://www.cnblogs.com/tengpengfei/p/10453995.html
Copyright © 2020-2023  润新知