• JavaWeb1


    JavaWeb

    HTTP:是一种超文本传送协议,是一套计算机在网络中通信的一种规则。

    是一种无状态的协议。

    过程:客户端向服务器发送一个请求,然后Web服务器返回一个响应,之后连接关闭。这是 请求响应模型。

    Web服务器的缺陷:

    只能向客户端提供静态网页内容,解决方案:在运行的Web服务软件的Web服务器主机上增加一个辅助应用,这个辅助应用负责生成动态页面,并且能与Web服务器软件通讯。

    最早的解决方案CGI

    通用网关接口,每次请求一个CGI资源,将在服务器创建一个新的进程,严重消耗服务器资源,极大的限制了一个服务器可以支持多个用户的数量。容易受到攻击,如;爆吧这些。

    Java的解决方案:

    1.Servlet:一套规范也是一个类

    2.Web容器:Servlet类中,没有main()方法,Web容器就是负责管理和运行Servlet

    3.处理过程:客户端发起一个HTTP请求——HTTP请求被服务器接收——服务器移交给Web

    ,Web容器在主机起一个进程,Web根据Servlet的配置问确定调用,处理完返回给容器,在返回给客户端。

    JavaWeb应用程序的组成:

    配置文件,静态文件盒JSP,类文件和包。结构如下:

    项目名称——{页面文件,WEB-INF{1.classes  2.lib  3.web.xml}}

    发布WEB应用:

    部署:打包:jar –cvf 项目名称.war *

    配置web.xml文件:

    <web-app>

        <servlet>

           <servlet-name>StudentServlet</servlet-name>

           <servlet-class>com.lovo.servlet.StudentServlet</servlet-class>

        </servlet>

        <servlet-mapping>

           <servlet-name>StudentServlet</servlet-name>

           <url-pattern>/ StudentServlet </url-pattern>

        </servlet-mapping>

    </web-app>

    Servlet生命周期:1类加载 2实例化3 调用init()方法,4等待用户访问

    5 调用destroy方法实现对象销毁

    一个Servlet必须有3个名称:一个是Servlet的名称,一个Servlet类的完整名称,一个是映射的逻辑名称:1.精确模式匹配/ 2.扩展名匹配* 3路径映射 4默认

     

    使用Servlet处理HTTP响应:

    发送服务端响应信息:

    状态行:1版本2响应码 5类:100-199 信息性,请求正在进行;200-299 ;客户请求成功

    300-399:指示新的地址 400-499:客户端引发错误 500-599:服务器引发错误3响应描述

    响应头:键值对,键可以重复

    空行:

    消息体:普通文本,二进制

    HttpServletResponse对象负责将信息返回给客户端

    HttpServletResponse对象只产生一个空的HTTP响应

    传回自定义的内容需要使用getWriter()或者getOutputStream()方法

    传送普通文本

    传送二进制内容

    设置请求重定向:

    使用sendRedirect方法实现重定向

    两次请求。第一次请求,响应后返回一个地址,再次调过去,再响应

    使用Servlet处理HTTP请求:

    接收服务器端请求信息;

    请求行:HTTP方法,请求的URLHTTP版本

    请求头:

    空行:

    消息体:

    GET/POST提交方法:

    浏览器向Web服务器发送HPPT请求:

    1用户在网页上点击一个超链接

    2用户提交在网页上填写好的表单

    3用户在浏览器地址栏输入URL地址并回车

    特征

    Get方法

    Post方法

    提交数据类型

    文本

    文本,二进制

    提交数据长度

    不超过255

    没有限制

    提交数据可见性

    一部分显示在浏览器地址栏

    不可见

    提交数据缓存

    缓存在浏览器URL历史状态中

    不会被缓存

    什么时候使用post1发送大数据的时候2 上传文件时 3发送用户名。密码或者其他保密信息的是时候使用

    只有frommethod属性;

    HttpServletRequest对象的如下方法访问

    getHeader(name):返回指定的请求头的值

    getHeaders(name) :返回一个Enumeration(枚举)包含请求头中的所有值

    getHeaderNames():特定请求中接受到的所有请求头的名称

    getIntHeader(name):获取特定请求头的值,并将其转化为int类型

    getDateHeader(name):获取特定请求头的值,并将其转化为Date类型 

    getParameter()根据键和值

    RequestDispatcher对象可以实现请求转发

    Include()方法包含。只是暂时的包控制权移交

    Forward() 方法跳转。执行权完全移交

    重定向和请求派发之间最大的区别在于,重定向让客户端浏览器来完成,而请求派发是在服务器端做工作

     

     

    JavaWeb

    HTTP:是一种超文本传送协议,是一套计算机在网络中通信的一种规则。

    是一种无状态的协议。

    过程:客户端向服务器发送一个请求,然后Web服务器返回一个响应,之后连接关闭。这是 请求响应模型。

    Web服务器的缺陷:

    只能向客户端提供静态网页内容,解决方案:在运行的Web服务软件的Web服务器主机上增加一个辅助应用,这个辅助应用负责生成动态页面,并且能与Web服务器软件通讯。

    最早的解决方案CGI

    通用网关接口,每次请求一个CGI资源,将在服务器创建一个新的进程,严重消耗服务器资源,极大的限制了一个服务器可以支持多个用户的数量。容易受到攻击,如;爆吧这些。

    Java的解决方案:

    1.Servlet:一套规范也是一个类

    2.Web容器:Servlet类中,没有main()方法,Web容器就是负责管理和运行Servlet

    3.处理过程:客户端发起一个HTTP请求——HTTP请求被服务器接收——服务器移交给Web

    ,Web容器在主机起一个进程,Web根据Servlet的配置问确定调用,处理完返回给容器,在返回给客户端。

    JavaWeb应用程序的组成:

    配置文件,静态文件盒JSP,类文件和包。结构如下:

    项目名称——{页面文件,WEB-INF{1.classes  2.lib  3.web.xml}}

    发布WEB应用:

    部署:打包:jar –cvf 项目名称.war *

    配置web.xml文件:

    <web-app>

        <servlet>

           <servlet-name>StudentServlet</servlet-name>

           <servlet-class>com.lovo.servlet.StudentServlet</servlet-class>

        </servlet>

        <servlet-mapping>

           <servlet-name>StudentServlet</servlet-name>

           <url-pattern>/ StudentServlet </url-pattern>

        </servlet-mapping>

    </web-app>

    Servlet生命周期:1类加载 2实例化3 调用init()方法,4等待用户访问

    5 调用destroy方法实现对象销毁

    一个Servlet必须有3个名称:一个是Servlet的名称,一个Servlet类的完整名称,一个是映射的逻辑名称:1.精确模式匹配/ 2.扩展名匹配* 3路径映射 4默认

     

    使用Servlet处理HTTP响应:

    发送服务端响应信息:

    状态行:1版本2响应码 5类:100-199 信息性,请求正在进行;200-299 ;客户请求成功

    300-399:指示新的地址 400-499:客户端引发错误 500-599:服务器引发错误3响应描述

    响应头:键值对,键可以重复

    空行:

    消息体:普通文本,二进制

    HttpServletResponse对象负责将信息返回给客户端

    HttpServletResponse对象只产生一个空的HTTP响应

    传回自定义的内容需要使用getWriter()或者getOutputStream()方法

    传送普通文本

    传送二进制内容

    设置请求重定向:

    使用sendRedirect方法实现重定向

    两次请求。第一次请求,响应后返回一个地址,再次调过去,再响应

    使用Servlet处理HTTP请求:

    接收服务器端请求信息;

    请求行:HTTP方法,请求的URLHTTP版本

    请求头:

    空行:

    消息体:

    GET/POST提交方法:

    浏览器向Web服务器发送HPPT请求:

    1用户在网页上点击一个超链接

    2用户提交在网页上填写好的表单

    3用户在浏览器地址栏输入URL地址并回车

    特征

    Get方法

    Post方法

    提交数据类型

    文本

    文本,二进制

    提交数据长度

    不超过255

    没有限制

    提交数据可见性

    一部分显示在浏览器地址栏

    不可见

    提交数据缓存

    缓存在浏览器URL历史状态中

    不会被缓存

    什么时候使用post1发送大数据的时候2 上传文件时 3发送用户名。密码或者其他保密信息的是时候使用

    只有frommethod属性;

    HttpServletRequest对象的如下方法访问

    getHeader(name):返回指定的请求头的值

    getHeaders(name) :返回一个Enumeration(枚举)包含请求头中的所有值

    getHeaderNames():特定请求中接受到的所有请求头的名称

    getIntHeader(name):获取特定请求头的值,并将其转化为int类型

    getDateHeader(name):获取特定请求头的值,并将其转化为Date类型 

    getParameter()根据键和值

    RequestDispatcher对象可以实现请求转发

    Include()方法包含。只是暂时的包控制权移交

    Forward() 方法跳转。执行权完全移交

    重定向和请求派发之间最大的区别在于,重定向让客户端浏览器来完成,而请求派发是在服务器端做工作

     

     

  • 相关阅读:
    DS18B20读数错误排除
    一个自增计数的问题
    SQLServer2005删除log文件和清空日志的方案
    英语课件快要到期问题的解决
    msp430板子接485接口的气体传感器问题及处理
    修复Windows XP右键没有新建菜单问题
    linux和windows共享文件
    打开office word excel弹出visual studio 2008
    iar 问题
    Windows中 RabbitMQ安装与环境变量配置
  • 原文地址:https://www.cnblogs.com/syl1104/p/3798103.html
Copyright © 2020-2023  润新知