Java web 笔记一

来源:互联网 发布:永宏plc解密软件 编辑:程序博客网 时间:2024/05/17 08:50

html: 全称为超文本标记语言。是通过标记和子标记来描述网页内容。超文本的含义为网页中国描述的不只是文本数据。还可以通过一系列标记去链接各式各样的资源。包括图片、音频、css、js等。当客户端在访问网页时,除了要下载文本数据,还要通过网页中描述的链接地址,去下载各式各样的资源文件。才能让网页正确显示。

 

 

工厂模式:将对象的创建和对象的使用分开进行。其目的是解耦。

 

http协议:超文本传输协议

1.      HTTP遵循请求/响应模型

2.      HTTP协议是一种无状态的协议,当客户端和服务器之间完成了数据交互之后,连接会断开,以释放服务器的内存资源。这样服务器就无法保存客户端的状态,会认为每次请求的用户都是新用户。

3.      HTTP协议的端口是80

 

HTTP协议流程:1 客户端和WEB服务器建立连接  --》 2 客户端发送http请求 –》3

服务器生产HTTP响应回发—》 4 关闭连接

 

http的请求信息分为四部分:

请求行:描述求情方式、求情的URL、http协议的版本

请求头:以键值对方式描述客户端的状态

空行:表示求情头的结束和消息体的开始

消息体:只针对POST,描述客户端发送给服务器的表单数据

 

 

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

text/html:网页格式数据

image/jpeg:图片格式数据

text/xml:xml格式数据

 

 

 

http响应信息分四部分:

状态行:描述http协议版本、状态码、状态描述。

响应头:以键值对方式描述服务器相关状态。

空行:标识响应头的节诶数和消息体开始

消息体:描述服务器发送给客户端的内容

 

 

 

 

 

 

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

 

解决方案

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

JAVA的servlet/JSP

 

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

 

web容器对servlet的支持包括

1.      通信支持(将请求信息和响应信息封装成请求对象和响应对象)

2.      servlet生命周期管理(产生servlet和销毁servlet,并调用servlet相关的方法)

3.      多线程支持(线程创建,线程启动,线程运行,线程同步)

4.      JSP支持(JSP引擎编写)

5.      处理安全性

 

 

 

servlet规范

 

 

 

tomcat 目录结构:

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

conf目录:存放tomcat的配置文件。其中server.xml用于tomcat服务器的相关配置。web.xml用于tomcat的中web应用相关的配置。

server.xml

         <Connectorport=”8080” procotol=”HTTP/1.1”…..

         描述tomcat启动端口

         <HostappBase=”webapps” unpackWARs=”true”

         appBase描述tomcat中存放web应用程序的目录

         unpackWARs当web应用程序目录中有war文件,则自动解压

lib目录:用于存放tomcat运行是所使用的jar包。其中servlet-api.jar是tomcat根据Servlet规范提供实现类所生成的jar文件

logs目录:存放日志文件

temp目录:存放临时文件

webapps目录:用于存放和部署web应用程序的目录

(如果测试的时候用记事本手写html文件,记得要另存为,不然编码集不对不能正常显示中文)

 

 

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

web服务器主要作用于开启服务器,监听端口,接受请求、产生响应,只是只能产生静态的html响应信息,极大影响响应信息灵活性

 

web容器是辅助应用的一种解决方案。允许将请求信息处理完成后,动态产生响应信息。

 

web服务器+web容器,合称web应用服务器

 

0 0
原创粉丝点击