html

来源:互联网 发布:恶意百度点击软件 编辑:程序博客网 时间:2024/06/06 18:49
html: 全称为超文本标记语言。是通过标记和子标记来描述网页内容。超文本的含义为在网页中描述的不只是文本数据。还可以通过一系列标记去连接格式各样的资源。 包括图片、音频、css、js等。当客户端在访问网页时,除了要下载文本数据,还需要通过网页中描述的链接地址,去下载各式各样的资源文件。才能让网页正确显示。
工厂模式的主要目的是结藕。

将对象的创建和对象的使用分开进行,其目的是解耦。

http:超文本传输协议

什么是HTTP协议
  1. HTTP遵循请求/响应模型
  2. HTTP协议是一种无状态的协议
  3. HTTP协议的端口号为80
http协议是一种无状态的协议。当客户端和服务器之间完成了数据交互之后,连接会断开,以释放服务器的内存资源。这样服务器就无法保存客户端的状态,会认为每次请求的用户都是新用户。

HTTP处理流程

  1. 客户端和web服务器建立连接
  2. 客户端向服务器发送HTTP请求
  3. 服务器生成HTTP响应回发客户端
  4. 关闭连接

http的请求信息分为4部分

  1. 请求行:描述请求方式、请求的URL、http协议的版本
  2. 请求头:以键值对的方式描述客户端的状态
  3. 空行:表示请求头的结束和消息体的开始。
  4. 消息体(只针对POST):描述客户端发送给服务器的表单数据。

MIME类型:用于描述客户端和服务器之间交互内容类型客户端可以根据MIME类型决定以什么应用程序来打开和执行。

  1. text/html:网页格式数据
  2. image/jpeg:图片格式数据
  3. text/xml:xml格式数据

http的响应信息分四部分:

  1. 状态行:描述http协议的版本、状态码、状态描述。
  2. 响应头:以键值对方式描述服务器相关的状态。
  3. 空行:标识响应头的结束和消息体的开始
  4. 消息体:描述服务器发送给客户端的内容
web响应只能为静态的

传统的web服务器产生响应时只能产生静态的html信息,这样极大的影响响应信息的灵活性。解决方案是。在web服务器之后加上辅助应用。辅助应用可以将请求信息处理后,以数据库为介质保存处理结果,然后动态产生响应信息。

CGI称为通用网关接口,他是辅助应用的一种解决方案。可以用多种语言编写,当客户端向服务器发送请求后,会开启外部程序来处理该请求,由于每个外部程序是进程,每次开启都会占用独立的内存空间。所有,会极大的耗费服务器的内存资源,也不能接收太多的请求。

最大优点是它可以使用Shell、Perl、C、PHP、Python等编写

java是利用web容器+servlet方式实现辅助应用,由web容器做一些底层操作,比如,流的解析,线程的控制,数据的封装等。同时,预留Servlet接口,交给开发者书写业务逻辑。这样开发者就可以将主要精力放在业务实现上。而不用为底层操作编写代码,同时,web容器利用多线程解决多任务,可以同时接收更多请求。

Web容器

Web容器负责管理和运行servlet
容器对Servlet的支持包括
  • 通信支持(将请求信息和响应信息封装成请求对象和响应对象)
  • Servlet生命周期管理(产生Servlet和销毁Servlet,并调用servlet相关方法)
  • 多线程支持(线程创建、线程启动、线程运行、线程同步)
  • JSP支持(jsp引擎编写)
  • 处理安全性
  • Web容器主要是用于给处于容器中的应用程序组件(Servlet、JSP)提供一个环境,是Servlet、JSP直接跟容器中的环境变量交互,这样,我们就可以吧注意力

tomcat的目录结构:

  • bin目录用于存放tomcat中的可执行文件。其中startup.bat用于启动tomcat。shutdown.bat用于关闭tomcat。
  • conf:

    存放tomcat的配置文件。其中server.xml用于tomcat服务器相关的配置。web.xml用于tomcat中web应用相关的配置。 <Connector port="8080" protocol="HTTP/1.1"——描述tomcat启动端口 <Host appBase="webapps" unpackWARs="true" appBase描述tomcat中存放web应用程序的目录 unpackWARs当web应用程序目录中右war文件,则自动解压。

  • lib:用于存放tomcat运行时所使用的jar包,其中servlet—api.jar是tomcat根据Servlet规范提供的实现类,所生成的jar文件。
  • logs:用于存放日志文件
  • temp:用于存放临时文件
  • webapps:用于存放和布属web应用程序的目录。
  • work:用于jsp支持

web服务器、web容器和web应用服务器的区别

  • web服务器主要作用于开启服务器,监听端口,接收请求、产生响应,只是只能产生静态的html响应信息,极大影响响应信息的灵活性。
  • web容器是辅助应用的一种解决方案。允许将请求信息处理完成后,动态产生影响信息。
  • web服务器+web容器,合称web应用服务器。
0 0