JavaWeb课程系列

第8章 Servlet

1.Servlet简介

1)从广义上来讲,Servlet规范是Sun公司制定的一套技术标准,包含与Web应用相关的一系列接口,是Web应用实现方式的宏观解决方案。而具体的Servlet容器负责提供标准的实现。

2)从狭义上来讲,Servlet指的是javax.servlet.Servlet接口及其子接口,也可以指实现了Servlet接口的实现类。

3)Servlet作为服务器端的一个组件,它的本意是“服务器端的小程序”。Servlet的实例对象由Servlet容器负责创建;Servlet的方法由容器在特定情况下调用;Servlet容器会在Web应用卸载时销毁Servlet对象的实例。

2.第一个Servlet

2.1编写Servlet

  • 创建自己的类HelloServlet,实现Servlet接口,并编写service方法

public class HelloServlet implements Servlet{

     @Override

     public void init(ServletConfig config) throws ServletException {

     }

     @Override

     public ServletConfig getServletConfig() {

              return null;

     }

     @Override

     public void service(ServletRequest req, ServletResponse res)

                       throws ServletException, IOException {

              System.out.println("我是不是被执行了?");

     }

     @Override

     public String getServletInfo() {

              return null;

     }

     @Override

     public void destroy() {

     }

}

  • 在xml中配置servlet信息

<servlet>

           <servlet-name>helloServlet</servlet-name>

           <servlet-class>com.atguigu.listener.HelloServlet</servlet-class>

  </servlet>

  <servlet-mapping>

           <servlet-name>helloServlet</servlet-name>

           <url-pattern>/helloworld</url-pattern>

  </servlet-mapping>

配置详解:

<servlet></servlet>:这个之间配置的是Servlet的类信息

<servlet-name>:这是Servlet的别名,一个名字对应一个Servlet。相当于变量名

<servlet-class>:Servlet的全类名,服务器会根据全类名找到这个Servlet

<servlet-mapping></servlet-mapping>:这个之间配置的是Servlet的请求映射信息

<servlet-name>:Servlet的别名,说明这个Servlet将会响应下面url-pattern的请求

<url-pattern>:Servlet响应的请求路径。如果访问这个路径,这个Servlet就会响应。这个url-pattern可以配置多个,这时表示的就是访问这些url都会触发这个Servlet进行响应

 

运行浏览器,访问刚才配置的url路径,Servlet的service方法就会被调用