《Java Web程序设计任务教程》简要复盘:第二章 JavaWeb概述
作者:氯磷Rolin
目录:
- 第一章:网页开发基础(无)
- 第二章:Java Web概述
- 第三章:Servlet基础
- 第四章:请求与响应
- 第五章:会话及其会话技术
- 第六章:JSP技术
- 第七章:EL表达式和JSTL
- 第八章:Servlet的高级特性
- 第九章:JDBC
- 第十章:数据库连接池与DBUtils工具
- 第十一章:JSP开发模型
- 第十二章:文件的上传和下载
第二章:Java Web概述
Java Web应用由一组Servlet、HTML页、类、以及其它可以被绑定的资源构成。它可以在各种供应商提供的实现Servlet规范的 Servlet容器 中运行。
XML基础
XML概述
可扩展标记语言,标准通用标记语言的子集,简称XML。是一种用于标记电子文件使其具有结构性的标记语言。
- 为什么要用XML
- 两个程序之间要进行数据通信
- 程序或者服务器启动时需要一个配置文件去读取端口号,连接数据库的用户名密码等
- 在XML语言中,它允许用户自定义标签。一个标签用于描述一段数据;一个标签可以分为开始标签和结束标签,在开始标签和结束标签之间,又可以使用其他的标签描述其他的数据,以此来实现数据关系的表述。
- XML的常见应用
- XML可以解决程序之间数据传输的问题。例如QQ之间的用XML进行数据传输,具有良好的可读性和可维护性
- XML可以做配置文件。XML普遍用作配置文件,例如Tomcat中的server.xml,web.xml等
- XML可以充当小型数据库。程序中可能会用到一些经常要人工配置的数据,放在数据库中会大大增加维护数据库的工作,使用XML充当小型数据库明显要比读取数据库来的简单快捷。
XML使用案例:
<?xml version="1.0" encoding="UTF-8"?>
<中国>
<河北>
<城市>石家庄</城市>
<城市>张家口</城市>
</河北>
<广东>
<城市>深圳</城市>
<城市>佛山</城市>
</广东>
</中国>
XML语法
1. 文档声明
在一个完整的XML文档中,必须包含一个XML文档的声明,并且该声明必须位于文档的第一行。这个声明表示该文档是一个XML文档,以及遵循哪个XML版本的规范。
XML文档声明的语法格式如下所示:
<?xml 版本信息 [编码信息] [文档独立性信息] ?>
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- 以
<?
开头 以?>
结尾 中括号[ ]
括起来的参数是可选的 - version表示XML的版本,目前最常用的是XML1.0
- encoding属性用来说明XML文档所使用的编码格式,默认情况下使用的是UTF-8编码
- standalone属性用来声明这个文件是否为独立的文档,默认情况下值为no,表示文档依赖于外部文档
2.元素定义
在XML文档中,主体内容都是由元素(Element)组成的。元素一般是由开始标记、属性、元素内容和结束标记构成。
- 例如:
<城市>重庆</城市>
- “<城市>“和”</城市>” 就是XML文档中的标记,标记的名称也就是元素的名称
- 在一个元素中可以嵌套若干个子元素
- 第一个元素没有嵌套在其他元素内,则这个元素称为根元素
- 一个元素没有嵌套子元素,也没有包含文本内容,则这个元素称为空元素,空元素可以不适用结束标记,但是必须在开始标记后面加一个正斜杠,例如:
<img />
3.属性定义
在XML文档中,可以为元素定义属性。 属性是对元素的进一步描述和说明。在一个元素中,可以有多个属性,并且每个属性都有自己的名称和取值。
<商品>
<名称>iphone12 Pro Max 128G</名称>
<售价 单位="美元">899</售价>
</商品>
- 在上面的示例中,
<售价>
元素中定义了一个属性“单位”。 - 属性值必须要用双引号
" "
或者单引号' '
引起来,否则视为错误
4.注释
如果想在XML中插入一些附加信息,比如作者的姓名,地址或者电话等信息,抑或是暂时屏蔽某些XML语句,这时,可以通过注释的方式来实现,被注释的内容会被程序忽略而不被解析处理。XML的注释写法和HTML基本一致
<!--这里是不被程序读取的注释信息-->
HTTP协议
1.HTTP概述
http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII码形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使得开发和部署是那么的直截了当。
HTTP介绍
HTTP诞生之初主要是应用于WEB端内容获取,那时候内容还不像现在这样丰富,排版也没那么精美,用户交互的场景几乎没有。
对于这种简单的获取网页内容的场景,HTTP表现得还算不错。但随着互联网的发展和WEB2.0的诞生,更多的内容开始被展示(更多的图片文件),排版变得更精美(更多的CSS),更复杂的交互也被引入(更多的jS)。
用户打开一个网站首页所加载的数据总量和请求的个数也在不断增加。
今天绝大部分的门户网站首页大小都会超过2M,请求数量可以多达100个。另一个广泛的应用是在移动互联网的客户端APP,不同性质的APP对HTTP的使用差异很大。对于电商类APP,加载首页的请求也可能多达10多个。对于微信这类IM,HTTP请求可能仅限于语音和图片文件的下载,请求出现的频率并不算高。
WEB页面生成原理
- 当我们在浏览器地址栏中输入网址,然后点击回车,接着浏览器就会呈现出我们需要的web页面。
- 那么这个页面是怎么产生的呢?
- web的界面是根据我们输入的URL,浏览器从服务器端获取对应的文件资源等信息,然后显示在浏览器上面。
- 像这样通过发送请求获取服务器资源的浏览器(browse),都可以称之为客户端