JavaWeb核心之Servlet

  Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来处理客户端请求、响应给浏览器的动态资源。但servlet的实质就是java代码,通过java的API 动态的向客户端输出内容

  但在实际开发中,我们不会直接去实现Servlet接口,因为那样需要覆盖的方法太多, 我们一般创建类继承HttpServlet

  实现步骤:

    1)创建类继承HttpServlet类

    2)覆盖doGet和doPost

    3)在web.xml中进行servlet的配置

Servlet接口中的方法

  1)init(ServletConfig config)

    何时执行:servlet对象创建的时候执行

    ServletConfig : 代表的是该servlet对象的配置信息  

  2)service(ServletRequest request,ServletResponse response)

    何时执行:每次请求都会执行

    ServletRequest :代表请求 认为ServletRequest 内部封装的是 http请求的信息

    ServletResponse :代表响应 认为要封装的是响应的信息

  3)destroy()

    何时执行:servlet销毁的时候执行

其中url-pattern的配置方式:

  1)完全匹配 访问的资源与配置的资源完全相同才能访问到

  2)目录匹配 格式:/虚拟的目录../*   *代表任意

  3)扩展名匹配 格式:*.扩展名

  注意:第二种与第三种不能混用 /aaa/bbb/*.abcd

 

ServletContext对象

  ServletContext代表是一个web应用环境对象,ServletContext对象内部封装是该web应用信息,ServletContext对象一个web应用只有一个,一个web应用可以有多个servlet对象

ServletContext的作用:

  1.获得web应用中任何资源的绝对路径

    方法:String path=context.getRealPath(相对于该web相对路径);写一个相对,得到一个绝对

  2.ServletContext是一个域对象(存储数据的区域就是域对象)

    作用范围:整个web应用(所有web资源都可以随意向ServletContext域中存取数据,数据可以共享)

  域对象通用方法:

    setAtrribute(String name,Object obj);

    getAttribute(String name);

    removeAttribute(String name);

 

你可能感兴趣的:(JavaWeb核心之Servlet)