Servlet的概述
1.1.1 Servlet的概述
1.1.1.1 什么是Servlet
Servlet其实就一个运行在web服务器上的小的Java程序,用于处理从web客户端发送的请求,并且对请求作出响应。
1.1.1.2 使用Servlet
l 编写一个Java类实现Servlet的接口
l 配置Servlet
第一步
先继承Servlet接口,在Serlvt中的service方法中类写响应好页面的内容
public class HelloServlet implements Servlet {
@Override
public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
resp.getWriter().println("<h1>hello java<h1>");
}
}
第二步,在web.xml中配置这个类
<!-- 在servlet标签中
1, 先<servlet-name>标签,可以自己定义名字.
2, 在<servlet-class>标签下写路径要发布类的路径
3, 在<servlet-mapping>标签下定义<servlet-name>标签和<url-pattern>
4, 这个标签要和上一个标签同名<servlet-name>
5, <url-pattern>后面写的就是访问的地址名-->
<servlet>
<!-- 配置Servlet的名字 -->
<servlet-name>HelloServlet</servlet-name>
<!-- 配置Servlet类的全路径 -->
<servlet-class>com.demo.servlet01.HelloServlet</servlet-class>
</servlet>
<!-- 配置Serlvet的映射 -->
<servlet-mapping>
<!-- 配置Servlet的名字(ps要和上一个名字相同) -->
<servlet-name>HelloServlet</servlet-name>
<!-- 配置访问地址 -->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
最后就是访问Servlet
http://localhost:8080/web_test/hello
重点
Servlet的执行流程
Servlet的实现关系
基本的实现关系
Servlet接口
|
|
GenericServlet类 通用的Servlet,是一个与协议无关的Servlet
|
|
HttpServlet类 Http专用的Servlet
1.1.1.2 关系实现的概述
SUN设计之初,是有野心,以后的互联网不仅仅只使用http协议,可以通过GenericServlet实现。HttpServlet是一个与协议相关的Servlet是专门用来处理HTTP协议的请求。通常编写一个Servlet一般都会让这个Servlet继承HttpServlet重写service方法。
在service方法内部根据请求方式不同执行不同的doXXX的方法(get请求执行doGet方法,如果是post请求就会执行doPost方法)。
所以往往继承了HttpServlet之后不需要重写service方法,只需要重写doGet和doPost方法即可。往往请求要处理的内容的代码都是一致的,所以需要让doGet和doPost相互调用可以简化编程。