Servlet概述

南笙酒味 提交于 2020-01-28 05:19:04

在这里插入图片描述

Java Web应用程序中所有的请求-响应都是由Servlet来完成的。Servlet是Java Web的核心程序,所有的网址最终都交给Servlet来处理。
Servlet并没有main之类的执行方法。当用户访问服务器的时候,Tomcat是通过调用Servlet的某些方法来完成整个处理过程的。

Servlet工作流程

在这里插入图片描述
浏览器提交的请求是遵循HTTP协议的文本。这段文本由服务器也就是Tomcat接收并解析,封装成了HttpServletRequest类型的request对象。所有的HTTP头数据都可以通过request响应的方法查询到。
Tomcat同时把输出流封装为HttpServletResponse类型的response对象,通过设置response属性就可以控制输出的内容。然后,Tomcat把request、response作为参数,调用Servlet的相应的方法,例如:

doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)

Servlet中主要处理业务逻辑,例如读取数据库、权限检查、业务处理等。

Servlet接口

Servlet实现了javax.servlet.Servlet接口的类。Servlet接口规定了特定的方法来处理特定的请求,开发者只需要实现Servlet的相关方法,用户访问Web程序的时候,Tomcat会调用这些方法完成业务处理。

Java Web目录结构

Web 程序部署在Tomcat的/webapps下面。一个webapps文件夹可以部署多个不同的Web应用。
例如:webapps/web1 、webapps/web2
访问时网址分别是
http://localhost:8080/web1
http://localhost:8080/web2
这两个不同的web应用分别称为两个Context,路径/web1、/web2也称为上下文路径(ContextPath)

如果不适用上限文路径,Web程序需要放到webapps/ROOT下面。
ROOT文件夹下的程序使用http://localhost:8080/访问。

根据Servlet规范,Web程序自己有特定的结构,部署时必须安装这样的结构部署。

文件夹 描述
/ Web应用根目录
/WEB-INF WEB-INF文件夹。Tomcat会隐藏该文件夹下的所有文件,保护他们不能通过浏览器直接访问。
/WEB-INF/web.xml web.xml文件。Web程序最主要的配置文件
/WEB-INF/classes/ class类文件都放在该文件下面,包括Servlet类。
/WEB-INF/lib jar文件都放在该文件下面
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!