前言
Servlet核心接口和类
在Servlet体系结构中,除了实现Servlet接口,还可以通过继承GenericServlet 或 HttpServlet类,完成编写。文章中是使用了HttpServlet类来演示。
Servlet接口
在Servlet API中最重要的是Servlet接口,所有Servlet都会直接或间接的与该接口发生联系,或是直接实现该接口,或间接继承自实现了该接口的类。 该接口包括以下五个方法:
init(ServletConfig config)
ServletConfig getServletConfig()
service(ServletRequest req,ServletResponse res)
String getServletInfo()
destroy( )
GenericServlet抽象类
GenericServlet 使编写 Servlet 变得更容易。它提供生命周期方法 init 和 destroy 的简单实现,要编写一般的 Servlet,只需重写抽象 service 方法即可。
HttpServlet类
HttpServlet是继承GenericServlet的基础上进一步的扩展。 提供将要被子类化以创建适用于 Web 站点的 HTTP servlet 的抽象类。HttpServlet 的子类至少必须重写一个方法,该方法通常是以下这些方法之一: doGet,如果 servlet 支持 HTTP GET 请求 doPost,用于 HTTP POST 请求 doPut,用于 HTTP PUT 请求 doDelete,用于 HTTP DELETE 请求
1、首先创建一个javaweb工程
在web->WEB-INF文件下面创建lib文件夹用来存放servlet的jar包,jar包记得添加依赖
2、jar包添加依赖
3、写java代码
在src下面创建一个java类叫Myservlet,继承HttpServlet类并实现它的四个接口doGet、doPost、doPut、doDelete、(这里可以按快捷键)并向页面中输出“hello servlet”
public class MyServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.getWriter().println("hello servlet");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
@Override
protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
@Override
protected void doDelete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
}
5、配置访问路径
这里有两种方式配置分别是.xml文件和注解,注解推荐Servlet3.0后使用,.xml推荐Servlet2.5之前使用
注解方式:
-
name: Serlvet名字 (可选).
-
value: 配置url路径,可以配置多个.
-
urlPatterns:配置url路径 ,和value作用一样,不能同时使用.
-
loadOnStartup:配置Servlet的创建的时机, 如果是0或者正数 启动程序时创建,如果是负数,则访问时创建。 数子越小优先级越高。
-
.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>Myservlet</servlet-name>
<servlet-class>com.gued.servlet.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Myservlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
<servlet>:Servlet配置.
<servlet-name>:名称.
<servlet-class>:Servlet的全称类名就是具体到刚刚你写的java类下面.
<servlet-mapping>:映射配置.
<servlet-name>:名称和上面的servlet对应.
<url-pattern>:设置请求路径.
6、servlet的执行流程
7、效果图
以上配置结束可以运行了,网址自动打开并在后面输入请求路径/hello.
版权声明:本文为博主作者:风起qq原创文章,版权归属原作者,如果侵权,请联系我们删除!
原文链接:https://blog.csdn.net/qq_55482652/article/details/136782307