Servlet入门级资料

Servlet

Servlet 核心知识

什么是Web开发

Web通信,指的是两台计算机通过网络来进行资源文件共享的活动
Web开发确保本次通信顺利执行

Web通信过程中两台计算机之间角色

  1. 客户端计算机:用于发送请求
  2. 服务端计算机:提供共享资源文件

资源文件

  1. 理论上来说,计算机上所有的文件都是资源共享文件
  2. 分类:
    1)静态资源文件:
    【定义】:文件内容是固定的,不能随着请求变化而发生变化
    【例子】:图片、html、doc、xls
    【特点】:服务端计算机直接将【静态资源文件】推送给【客户端计算机】,所有被共享的【静态资源文件】最终是在客户端计算机运行
    2)动态资源文件:
    【定义】:文件内容可以根据用户提供需求变化而产生不同变化内容
    【例子】:Java文件(不定义了,不好定义~)
    【特点】:服务端计算机会调用执行【动态资源文件】。服务端计算机将【动态资源文件】的运行结果交给客户端计算机。

Web通信过程中,两台计算机如何进行通信

  1. C/S结构通信方式:
    C:client,客户端计算机安装特定【客户端程序】。可以帮助客户端计算机向指定的服务端计算机发送请求。
    S:server,在服务端计算机安装一种特定【资源调度软件】,接受特定客户端程序程序发送请求,将请求需要资源文件推送回客户端计算机上【客户端程序】。
    【例子】:微信,QQ,所有大型网络游戏
    【优缺点】:
    优点:1、可以有效的保护服务端计算机。2、可以分摊服务端计算机工作压力。
    缺点:1、增加客户获得服务的成本。2、增加服务端维护成本
    【针对客户群体】:个人用户
  2. B/S结构通信方式:
    B:browser:可以帮助客户端计算机向任意的服务端发送请求
    S:server:在服务端计算机安装一种特定【资源调度软件】,可以接收所有浏览器所发送的请求。将请求的资源文件推送客户端计算机浏览器上
    【优缺点】:
    优点:1、不会增加客户获得服务的成本。2、不会增加服务端维护的成本。
    缺点:1、无法有效保护服务端计算机。2、无法通过客户端计算机来分摊服务端计算机的压力
    【针对的客户群体】:企业用户

网络协议(包)

  1. 【定义】:用于包裹在网络中传输的【二进制数据】。网络协议包存在【固定空间】用于存放【特定数据】,便于接收方分析得到数据
  2. 【分类】:FTP网络协议 HTTP协议 file协议
  3. 【B/S通信方式中】:到目前为止B/S通信结构中,只使用HTTP网络协议包

HTTP网络协议包内部结构

  1. HTTP请求协议包:
    1)是浏览器在发送请求是负责创建的
    2)是浏览器负责将请求信息,写入到请求协议包
    3)HTTP请求协议包内部自上而下有四层结构:
    【请求行】{
    url:请求的资源文件地址
    method:浏览器采用的请求方式
    }
    【请求头】{
    浏览器希望获得资源文件类型【html/png】
    浏览器希望获得资源文件内容依赖字符集
    如果浏览器采用【get方式发送请求】,本次所关联的请求参数需要保存在请求头中
    }
    【空白行】{隔离作用}
    【请求体】{
    如果浏览器采用【POST方式发送请求】,本次关联请求参数需要保存在请求体
    }
  2. 响应协议包:
    1)在服务端计算机的【资源调度软件】准备推送文件时,负责创建的
    2)【相应协议包内容】可以由【资源调度软件】写入,也可以由Java命令(Response)写入
    3)HTTP请求协议包内部自上而下有四层结构:
    【状态行】{
    状态码(200/404/405/500等等)
    }
    【响应头】{
    返回文件内容类型(doc,text,htom,text/html)
    返回文件内容所依赖的字符集,浏览器需要使用这个字符集对接收的内容进行解码
    }
    【空白行】{隔离作用}
    【响应体】{
    静态资源文件也可能是动态资源文件的运行结果(二进制形式)
    }

客户端计算机上浏览器管理

如何命令浏览器向指定网站发送请求

  1. 通过form表单命令
  2. 通过超链接命令< a href=“http://www.baidu.com” >点击这里< /a >
  3. 浏览器的地址栏对象 window.location=“http://sina.com”

请求方式【POST/GET】

  1. GET方式:
    1)要求浏览器发送请求时,携带的请求参数数量不能超过4K
    2)要求浏览器将请求参数写入到【请求头】
    3)要求浏览器将请求参数信息在地址栏上显示出来
    4)要求浏览器对接收的资源文件必须缓存到内存中
    【静态资源推荐用GET】
  2. POST方式:
    1)不会限制浏览器发送请求时,携带请求参数数量
    2)要求浏览器将请求参数写入到【请求体】
    3)要求浏览器将请求参数信息在地址栏隐藏
    4)要求浏览器对所接收的文件不能保存到缓存中
    【动态变化内容推荐用POST】
  3. 如何控制浏览器采用的请求方式
    1)让浏览器发送请求时,采用【GET方式】
    1、超链接标签命令,一定会要求浏览器采用【GET方式】
    2、location对象,一定会要求浏览器采用【GET方式】
    3、FROM标签命令中的method属性,可以控制浏览器采用【GET方式】发送请求
<form action="www.baidu.com" method="GET">
	<input type="submit" value="提交">
</form>

2)让浏览器发送请求时,采用【POST方式】

<form action="www.baidu.com" method="POST">
	<input type="submit" value="提交">
</form>

如何命令浏览器在发送请求时,携带制定请求参数

  1. 超链接标签命令,可以命令浏览器携带请求参数
<a href="http://baidu.com?username=mike&age=23"&
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值