Web开发TomcatHttp.docx
- 文档编号:6067374
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:15
- 大小:340.78KB
Web开发TomcatHttp.docx
《Web开发TomcatHttp.docx》由会员分享,可在线阅读,更多相关《Web开发TomcatHttp.docx(15页珍藏版)》请在冰豆网上搜索。
Web开发TomcatHttp
一Web开发的概念(知道了解即可)
1、web的结构
2常见的服务器(软件)
●WebLogic:
Oracle公司产品;支持JavaEE规范;收费。
●WebSphereAS(ApplicationServer):
IBM公司产品;支持JavaEE规范;收费。
●JbossAS:
红帽公司产品;支持JavaEE规范;免费。
●Tomcat(雄猫):
Apache组织的产品;支持Servlet/JSP规范;免费。
容器:
我们开发的程序必须放到服务器(软件)上才能运行,要求服务器必须支持某些规范,实现了什么规范的服务器,我们一般称之为什么容器。
二、Tomcat服务器
2.1、Tomcat的版本
Tomcat的版本是与Servlet/JSP的版本对应的(新版本兼容旧版本)
Tomcat版本Servlet/JSP版本JavaEE版本JDK版本
8.X3.2JDK7+
7.X3.0/2.2JavaEE6.0JDK6+
6.X2.5/2.1JavaEE5.0JDK5+
2.2、Tomcat的安装步骤:
(解压版)
A、前提:
a)必须配置JAVA_HOME环境变量,指向JDK的安装目录
b)(可选)配置CATALINA_HOME环境变量,执行Tomcat的安装目录。
B、解压apache-tomcat-7.0.53.zip到磁盘的某个目录中(要求:
目录不能有中文或空格)
C、验证安装是否成功
启动服务器:
安装目录\bin\startup.bat
启动过程中如果没有报错,说明成功了,当然,可以通过以下方式验证是否成功!
Tomcat默认使用的端口是8080.
IE:
http:
//localhost:
8080或者http:
//127.0.0.1:
8080
2.3、启动Tomcat可能遇到的问题
A、闪退。
原因:
没有配置JAVA_HOME环境变量
B、启动不成功:
端口占用的问题。
Tomcat默认的端口是8080。
●找到那个占用端口的进程,干掉它。
关闭的方法:
可在360里小圆球,看网速,详情里面找到相应的端口号
●让Tomcat换一个端口:
打开Tomcat\conf\server.xml
2.4、Tomcat的目录结构(记住)
特别注意:
webapps:
很重要。
存放我们开发的JavaWeb应用的。
该目录中有几个文件夹,就说明目前有几个应用。
webapps
App2
App1
B文件夹
A文件夹
2.5、JavaWeb应用的目录结构(死了都得记住)
规范规定的
MyAPP应用名称
1.Html
Css(文件夹)
Main.css
User
addUser.html
editUser.html
WEB-INF:
特别重要。
必须大小写完全一致。
放在此目录中的内容,用户无法直接访问。
classes:
特别重要。
必须大小写完全一致。
放class字节码文件。
cn.itcast.Person.classcn\itcast\Person.class
lib:
特别重要。
必须大小写完全一致。
放本应用需要的jar包。
web.xml:
特别重要。
必须大小写完全一致。
本应用的配置文件。
小知识:
存放类的地方:
1、本应用的classes目录:
为本应用服务
2、本应用的lib中的jar包:
为本应用服务
3、Tomcat的lib中的jar包:
为所有的应用服务
2.6、如何发布我们的应用到服务器上
A、直接把应用的目录拷贝到Tomcat\webapps目录下
B、把我们的应用打成war包,再拷贝到Tomcat\webapps目录下
问题(如何把我们的项目打成jar包?
?
?
?
)
2.7、Tomcat的组成结构:
(进一步熟悉如何配置Tomcat。
练一遍)
Tomcat配置中,最重要的就是Tomcat\conf\server.xml配置文件。
记住:
1、用户的访问都是通过Tomcat的连接器过来的
2、Tomcat的引擎中管理着很多的主机(Host)
3、每个主机中管理着很多的应用(Context)
小案例:
(练一把)
●配置虚拟目录:
(应用Context)
把磁盘上任意目录配成Tomcat管理的应用。
比如E:
/MyApp交给Tomcat管理,为外界提供服务。
(不要采取拷贝到Tomcat\webapps目录下的形式)
方式一(不推荐):
修改Tomcat\、conf\server.xml,在
注意:
path必须以/开头;(右斜线)
Context的属性:
(虚拟目录映射:
真实目录映射一个虚的)
Path:
虚拟目录。
用户用浏览器访问的应用的路径。
一般以/开头
docBase:
应用的真实存放路径
如何访问:
http:
//localhost:
8080/shit/1.html
弊端:
Tomcat必须重启。
总结:
只要修改了server.xml,都需要重启
方式二(推荐):
1、建立一个扩展名为.xml的配置文件,文件的主文件名就是虚拟目录的名称(如SH.xml),内容如下:
xmlversion="1.0"?
>
\MyAPP"/> 2、把SH.xml放到Tomcat\conf\Catalina\localhost目录中 3、访问: http: //localhost: 8080/SH/1.html 优点: 不需要重启Tomcat就会生效。 实际开发中: 直接拷贝到Tomcat\webapps目录下 ●配置虚拟主机: (Host) 1、修改Tomcat\conf\server.xml,在 \itcastapps" unpackWARs="true"autoDeploy="true"/> \itheimaapps" unpackWARs="true"autoDeploy="true"/> 2、重新启动Tomcat 3、DNS有关配置: 修改本地hosts文件C: \WINDOWS\system32\drivers\etc\hosts配置文件 (wini7系统要把该文件拖出来处理,处理完再放回去) 127.0.0.1localhost 127.0.0.1 127.0.0.1 4、我们就可以访问了 : 8080/app1/1.html : 8080/app1/1.html 特别提醒: 练完后把hosts改回来 ●配置默认应用、默认主页、默认端口 http: //localhost: 8080/MyAPP/1.html=http: //localhost 1、默认端口: HTTP协议规定默认访问的端口80.(http: //localhost/MyAPP/1.html) 修改Tomcat\conf\server.xml----->808080 2、把自己的应用改为默认应用: (http: //localhsot/1.html) 方式一: 把应用的名称改为ROOT 方式二: 在Tomcat\conf\Catalina\localhost建立一个名称为ROOT.xml配置文件即可(需要重启Tomcat) xmlversion="1.0"? > \MyAPP"/> 3、更改应用的默认主页: (http: //localhost) 修改应用下的web.xml,配置以下内容 --配置当前应用的默认主页--> 三、HTTP协议(非常重要) 3.1、http作用 作用: 描述客户端和服务器端数据的传递的协议 3.2、http全称 全程: HyperTextTransferProtocol超文本传输协议。 超文本: HTML 3.3、http版本: 1.01.1(主流) 3.4、HTTP1.0VSHTTP1.1(主要区别) 1.0: 无状态协议。 每次访问服务器都需要建立一次网络连接,耗费时间和资源 1.1: 可以在一次网络连接基础之上,发出很多次请求和收到很多次响应。 3.5、明确几个问题: 带有链接的标记,比如: 3.6、HTTP协议的组成: (请求和响应。 必须记住) ●请求部分: ★★请求部分的组成: 请求消息行。 位于请求部分的第一行 请求消息头。 从第2行开始,至第一个空行结束 从第一个空行开始往后,都是请求正文。 (目前木看见) ●响应部分: ★★响应部分组成: 响应消息行 从第2行至第一个空行,响应消息头 从第一个空行开始,后面的就是响应正文 3.7、请求部分详解(客户端发给服务器) 7.1请求行 ----------------------------------------------------------------------------------- GET/MyAPP/1.htmlHTTP/1.1 ▲GET: 请求方式(requestmethod) 默认的请求方式是GET。 常用的有GETPOSTHEADOPTIONS GET和POST有何不同 ●GET: 默认的。 GET/MyAPP/1.html? username=ddd&password=111HTTP/1.1。 请求参数的数据暴露在地址上(不安全)。 有长度限制(<1024B) ●POST(开发首选): 通过表单来设置。 请求正文中有内容(表单中的数据)。 长度木有限制。 Name1=value1&name2=value2 使用POST请求方式可以记住form表单Login
username:
password:
-----------------------------------------------------------------------------------
/MyAPP/1.html:
请求的URI地址(资源地址)
URL:
协议+IP:
端口+资源地址http:
//localhost:
8080/MyAPP/1.html
-----------------------------------------------------------------------------------
HTTP/1.1:
请求使用的协议及版本号
7.2请求正文
只有POST请求方式时才会出现。
出现的内容就是表单要提交的数据。
形式:
username=abc&password=123&gender=female
7.3请求消息头
作用:
向服务器端传递一些附加信息。
形式:
1、Header-Name:
headerValue1,heaerValue2
2、Header1:
headerValue1
Header1:
headerValue2
注意:
一个头2个值和两个同名头和值是不同的。
常用的请求消息头:
1.Accept:
告知服务器,浏览器能够接受的数据MIME类型。
MIME类型:
磁盘文件系统中:
文件的扩展名区分不同的文件的。
网络中:
通过数据的MIME类型区分数据的。
他们之间有对应关系:
查阅Tomcat\conf\web.xml
--磁盘文件的扩展名-->
--txt文件对应的MIME类型-->
MIME特点:
大类型/小类型
2.Accept-Charset:
告知服务器,客户端能接受的字符集。
3.*Accept-Encoding:
告知服务器,客户端支持的压缩编码。
比如gzip
4.Accept-Language:
告知服务器,客户端支持的语言。
(可以通过浏览器设置)
5.*Referer:
告知服务器,当前页面是由哪个页面转过来的。
用户如果是直接访问,没有这个头。
实际应用:
防盗链;广告效果投放统计;
6.*Content-Type:
告知服务器。
客户端提交的请求正文的MIME类型。
默认是application/x-form-data-urlencoded(username=abc&password=123)。
可以通过表单form的enctype属性指定。
可选值multipart/form-data(文件上传)
7.*If-Modified-Since:
告知服务器,本地缓存的资源的最后的修改时间。
8.*User-Agent:
告知服务器,客户端使用的浏览器的类型
9.*Content-Length:
告知服务器,客户端发送的请求正文内容的长度
10.Connection:
告知服务器,需要持久连接
11.*****Cookie:
向服务器发送cookie数据。
(会话管理详解)
3.8、响应部分详解(服务器发给客户端的)
8.1响应行
1.HTTP/1.1200OK
2.HTTP/1.1:
响应使用的协议及版本号
3.200:
响应状态码。
说明了本次请求的结果状态
1XX
2XX:
一切正常
3XX
4XX:
访问的资源有问题
5XX:
访问的资源运行出错了(出现异常)
4.常用的响应码:
(目前用到了就30个左右,其他的是W3C保留的)
●200:
一切OK
●302、307:
临时重定向
●304:
客户端请求的内容木有更改(没有更新)
●404:
访问的资源不存在
●500:
服务器内部错误。
一般出现在服务端程序出现异常
OK:
对响应码的文字描述
8.2响应正文
浏览器收到的数据,这些数据都是HTML。
浏览器进行展现。
(右键看源码,实际上就是看的响应的正文)
8.3响应消息头
作用:
向客户端传递一些附加信息
常用的响应消息头:
●*Location:
指向一个地址。
经常和302响应码实现请求重定向。
●Server:
告知客户端,服务器端使用的服务器(软件)的类型。
●*Content-Encoding:
告知客户端,服务器使用的压缩编码。
比如gzip(压缩格式)
●*Content-Length:
告知客户端,请求正文的内容长度。
●*Content-Type:
告知客户端,请求正文的MIME类型。
●*Content-Type:
text/html;charset=UTF-8(正文为超文本,编码用的是UTF-8)
●*Refresh:
告知客户端,定时刷新
●*Content-Disposition:
告知客户端,请使用下载的方式打开
●Content-Disposition=attachment;filename=1.jpg
●*****Set-Cookie:
会话管理
●*一起来告诉客户端不要缓存:
Expires:
-1
Cache-Control:
no-cache(1.1)
Pragma:
no-cache(1.0)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 开发 TomcatHttp