文章目录
一、Servlet基础
1.什么是Servlet
1.什么是Servlet
(1)javaEE的规范(接口)之一;
(2)Java Web的三大组件(Servlet程序、Filter过滤器、Listener监听器)之一;
(3)运行在服务器上的一个java小程序,可以接收客户端发来的请求,并相应数据给客户端;
2.手动实现Servlet接口
(1)编写一个类实现Servlet接口;
(2)实现service方法,处理请求,并响应数据;
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("Hello Servlet 被访问了");
}
代码如下(示例):
(3)到WEB_INF-----web.xml中配置servlet程序的访问地址,其配置如下:
<servlet>
<!--给Servlet程序起别名,一般是类名-->
<servlet-name>HelloServlet</servlet-name>
<!--Servlet程序的全类名-->
<servlet-class>servlet.HelloServlet</servlet-class>
</servlet>
<!--servlet-mapping标签给servlet程序配置访问地址-->
<servlet-mapping>
<!--告诉服务器当前配置的地址给哪个Servlet程序使用,故传入Servlet的别名即可-->
<servlet-name>HelloServlet</servlet-name>
<!--
1.斜杠/表示地址为:http://ip:port/工程路径
2./hello表示地址为:http://ip:port/工程路径/hello
3.设为hello的原因是要与类名有个简单的对应关系
-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
3.Servlet的生命周期
(1)执行Servlet构造器方法
(2)执行init初始化方法
(3)执行service方法
(4)执行destroy销毁方法
4.Servlet请求的分发处理
将service方法中的ServletRequest对象强制转换为其子类对象HttpServletRequest,调用子类的getMethod()方法,然后判断是get请求还是post请求,分别执行对应的doGet或doPost方法;
5.通过继承HttpServlet实现Servlet程序(常用)
(1)编写一个类继承HttpServlet类
(2)根据业务需要重写doGet或doPost方法
(3)到web.xml中配置Servlet程序的访问地址