美文网首页
<JavaWeb>Servlet技术简介

<JavaWeb>Servlet技术简介

作者: 普通一般社会人 | 来源:发表于2016-04-17 07:47 被阅读178次
    笔记总结自网易云课堂Servlet系列课程

    什么是Servlet

    Servlet == Server + Applet
    Applet是采用Java编写的小应用程序,可以内嵌在HTML中,由支持applet的浏览器在客户端运行。
    而Servlet指的是在服务器端运行的applet,Servlet类是一个独特的Java类,它本身不包含main方法,不能独立运行于JVM中,需要运行在特殊的容器中,由容器进行管理。编写Servlet程序时,需要遵循Servlet规范。Servlet与HTTP关系紧密,能够处理HTTP请求,并提供HTTP响应。用一句话来总结,即:
    一个Servlet是一个Java类,并且提供基于请求-响应模式的Web服务

    Servlet容器
    Servlet依靠容器运行,而又与容器分离,相互独立发展。
    Servlet容器提供Servlet的装载和管理工作,包括Servlet的创建运行和销毁。
    而Servlet容器本质上是一个服务器程序,负责将请求分配给对应的Servlet,然后将Servlet运行的结果回传给服务器,服务器再将最后的结果返回给客户端。

    Servlet的创建
    创建一个Servlet类,需要这个类继承自HttpServlet类,我们可以在tomcat/lib文件目录下找到servlet.jar文件,只要将这个文件添加进IDE的lib中,就可以了,或者我们也可以直接安装Eclipse IDE for Java EE版本链接在此
    创建完成之后,重写doGet和service方法。

    重写doGet和service方法
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            super.doGet(req, resp);
            PrintWriter pw = resp.getWriter();
            pw.print("hello world");
            pw.close();
        }
    

    之后import进所有需要的库文件,这样,我们的hello world就写好了,想要真实的看到语句的执行结果,需要有服务器的基础知识,即web.xml文件的配置路径和配置方法。web.xml配置一般放在项目目录下WEB-INF文件目录下。这里仅介绍Servlet的配置。

    <servlet>
        <servlet-name>Servlet的名字</servlet-name>
        <servlet-class>Servlet类的路径以包的形式来写,比如com.java.helloServlet</servlet-class>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>Servlet的名字,与上相同</servlet-name>
        <url-pattern>Servlet对外路径,如/hello</url-pattern>
    </servlet-mapping>
    

    接下来,只需要启动Tomcat,部署项目,进行访问就可以了。
    如果我们进行跟踪的话,会发现,Servlet在进行访问时,会先调用service方法,再调用doGet方法。

    在处理HTTP请求时,servlet容器会根据配置文件web.xml找到servlet地址,并将请求转发给service方法,传入两个参数,如果请求是GET方法,service就会将请求再次转发给doGet方法进行后续的处理工作。最后,我们会使用HttpServletResponse对象将数据返回。这就是一个完整的Servlet处理流程。

    相关文章

      网友评论

          本文标题:<JavaWeb>Servlet技术简介

          本文链接:https://www.haomeiwen.com/subject/nhsolttx.html