Servlet 复习 1
文章目录
HTTP协议
一个传输层网络协议,超文本传输协议
特点:
1.简单快速的传输协议,支持多种不同的数据提交 GET/POST
2.数据在传输时,数据类型与大小是无限制的
3.无连接协议,每一次连接,处理一次请求,服务器进行响应后,立即断开连接
4.无状态协议,服务器处理客户端请求是,没记忆能力
1. 研究http 的请求和响应结构
Http协议有两部分组成:
1.请求:客户端寻找服务器,索要数据的过程
2.响应:服务器接收到客户端的请求,回复数据的过程
请求由四部分组成:
1.请求头:
由一个个键值对组成,用于描述客户端的信息,
User-Agent:产生请求的浏览器类型。Accept:客户端可识别的内容类型列表。Host:请求的主机名,允许多个域名同处一个IP地址,即虚拟主机。
2.请求体:
由一个个键值对组成,储存的是post请求的请求数据,
GET 不存在请求体
3.请求空行:
请求头部与请求体之间的一行空白符,
4.请求行:
由一个个键值对组成,描述的请求的相关信息:请求方式,请求地址,协议方式等
响应由三部分组成:
1. 响应头
由一个个的键值对组成 , 用于描述服务器的信息.
2. 响应体
响应的内容 , 通常是一个HTML文件的内容.
3. 响应行
由一个个的键值对组成, 描述的是响应的相关信息: 服务器协议版本 ,响应状态码, 以及响应成功或失败的提示.
欢迎端口号
HTTP协议的默认端口为 80:
http协议访问时, 80端口号 可以忽略.
HTTPS协议的默认端口号为 443:
https协议访问时, 443端口号 可以忽略.
2.研究tomcat
什么是tomcat
tomact -- 一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
快速搭建步骤
1.安装JDK和Tomcat
2.配置JDK环境变量
3.测试JDK
4.启动tomcat
------ 打开解压文件根目录下的Bin文件夹,通过执行startup.bat文件启动tomacat服务。
----- 打开浏览器,在地址栏中输入http://localhost:8080回车,如果看到Tomcat自带的一个JSP页面。
Tomcat的作用
tomca的目录结构和作用
- bin : 执行文件目录
- conf : 配置文件目录
- lib : jar包
- logs : 日志文件目录
- temp : 临时文件
- webapps : 项目部署文件夹,webapps中的每一个子文件夹都是一个单独的项目
- work : 工作路径
- bin:该目录下存放的是二进制可执行文件,
如果是安装版,那么这个目录下会有两个exe文件:tomcat8.exe、tomcat8w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口启动Tomcat;
如果是解压版,那么会有startup.bat和shutdown.bat文件,startup.bat用来启动Tomcat,但需要先配置JAVA_HOME环境变量才能启动,shutdawn.bat用来停止Tomcat,
Linux版本用start.sh来启动,用shutdown.sh来停止Tomcat;
- conf:这是一个非常非常重要的目录,这个目录下有四个最为重要的文件:
server.xml:配置整个服务器信息。例如修改端口号,添加虚拟主机等;
tomcatusers.xml:存储tomcat用户的文件,这里保存的是tomcat的用户名及密码,以及用户的角色信息。可以按着该文件中的注释信息添加tomcat用户,然后就可以在Tomcat主页中进入Tomcat Manager页面了;
web.xml:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型。这些MIME类型是客户端与服务器之间说明文档类型的,如用户请求一个html网页,那么服务器还会告诉客户端浏览器响应的文档是text/html类型的,这就是一个MIME类型。客户端浏览器通过这个MIME类型就知道如何处理它了。当然是在浏览器中显示这个html文件了。但如果服务器响应的是一个exe文件,那么浏览器就不可能显示它,而是应该弹出下载窗口才对。MIME就是用来说明文档的内容是什么类型的!
context.xml:对所有应用的统一配置,通常我们不会去配置它。
- lib:Tomcat的类库,里面是一大堆jar文件。
如果需要添加Tomcat依赖的jar文件,可以把它放到这个目录中,当然也可以把应用依赖的jar文件放到这个目录中,这个目录中的jar所有项目都可以共享之,但这样你的应用放到其他Tomcat下时就不能再共享这个目录下的Jar包了,所以建议只把Tomcat需要的Jar包放到这个目录下;
- logs:这个目录中都是日志文件,记录了Tomcat启动和关闭的信息,如果启动Tomcat时有错误,那么异常也会记录在日志文件中。
- temp:存放Tomcat的临时文件,这个目录下的东西可以在停止Tomcat后删除!
- webapps:存放web项目的目录,其中每个文件夹都是一个项目;如果这个目录下已经存在了目录,那么都是tomcat自带的。项目。其中ROOT是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是ROOT项目。http://localhost:8080/examples,进入示例项目。其中examples就是项目名,即文件夹的名字。
work:运行时生成的文件,最终运行的文件都在这里。通过webapps中的项目生成的!可以把这个目录下的内容删除,再次运行时会生再次生成work目录。当客户端用户访问一个JSP文件时,Tomcat会通过JSP生成Java文件,然后再编译Java文件生成class文件,生成的java和class文件都会存放到这个目录下。
欢迎项目
ROOT项目是欢迎项目, 在ROOT项目中部署的文件, 访问时无需输入文件夹名称ROOT
测试是否可以运行
1. 打开tomcat\bin\tomcat8w.exe
2. 点击start
3. 打开浏览器输入:http://localhost:8080
4. 观察页面是否显示.
如果8080 端口号被其他软件占用, 例如:预览版的oracle.
1. 通过记事本编辑tomcat\conf\server.xml
2. 将70行左右的8080 更改为8090
3. 保存文件, 重启tomcat8w , 点击start
3.什么是Servlet
java中的一个类,运行在web服务器中,
提供动态的html响应
怎么编写servlet
1. 编写一个Java类 继承HttpServlet
2. 重写父类的service方法
3. 在service方法中, 处理请求, 并对用户进行响应
4. 配置servlet的访问网址
5. 使用浏览器访问.
1. 编辑 web-inf/web.xml文件
2. 给根节点 加入子节点servlet.
<servlet>
<servlet-name>别名</servlet-name>
<servlet-class>包名.类名</servlet-class>
</servlet>
3. 给根节点 加入子节点servlet-mapping
<servlet-mapping>
<servlet-name>对应第二步的别名</servlet-name>
<url-pattern>/访问地址</url-pattern>
</servlet-mapping>
根节点 加入子节点servlet-mapping
对应第二步的别名
/访问地址