本文共 2538 字,大约阅读时间需要 8 分钟。
第一部分:ServletConfig接口
一、简述
Servlet接口的init(ServletConfig config)方法有一个ServletConfig类型的参数。当Servlet容器初始化一个Servlet对象时,会为这个Servlet对象创建一个ServletConfig对象。在ServletConfig对象中包含了Servlet的初始化参数信息,此外,ServletConfig对象还与当前Web应用的ServletContext对象相关联。Servlet容器在调用Servlet对象的init(ServletConfig config)方法时,会把ServletConfig对象作为参数传给Servlet对象,init(ServletConfig config)方法会使得当前Servlet对象与ServletConfig关联。
二、ServletConfig接口中定义的方法:
1)getInitParameter(String name):根据给定的初始化参数名,返回匹配的初始化参数值。 2)getInitParameterNames():返回一个Enumeration对象,里面包含了所有的初始化参数名。 3)getServletContext():返回一个ServletContext对象。 4)getServletName():返回Servlet的名字,即web.xml文件中相应<servlet>元素的<servlet-name>子元素的值。如果没有为Servlet配置<serlvet-name>子元素,则返回Servlet类的名字。
第二部分:ServletContext接口
一、简述
ServletContext是Servlet与Servlet容器之间直接通信的接口。Servlet容器在自启动一个Web应用时,会为它创建一个ServletContext对象。每个Web应用都有唯一的ServletContext对象,可以把ServletContext对象形象地理解为Web应用的总管家,同一个Web应用中的所有Servlet对象都共享一个总管家,Servlet对象们可通过这个总管家来访问容器中的各种资源。 二、ServletContext接口方法分以下几类:
1、用于在Web应用范围内存取共享数据的方法。
1)setAttribute(String name , Object java.lang.Object object):把一个java对象与一个属性名绑定,并把它存入到ServletContext中。参数name指定属性名,参数object标识共享数据。 2)getAttribute(String name):根据参数给定的属性名,返回一个Object类型的对象,它表示ServletContext中与属性名匹配的属性值。 3)getAttributeNames():返回一个Enumeration对象,该对象包含了所有存放在ServletContext中的属性名。 4)removeAttribute(String name):根据参数指定的属性名,从ServletContext中删除匹配的属性。
2、访问当前Web应用的资源。
1)getContextPath():返回当前Web应用的URL入口。 2)getInitParameter(String name):根据给定的参数名,返回Web应用范围内的匹配的初始化参数值。在web.xml文件中,直接在<web-app>跟元素下定义的<context-param>元素表示应用范围内的初始化参数。 3)getInitParameterNames():返回一个Enumeration对象,它包含了Web应用范围内的所有初始化参数。 4)getServletContextName():返回Web应用的名字,即web.xml文件中<display-name>元素的值。 5)getRequestDispatcher(String path):返回一个用于向其他Web组件转发请求的RequestDispatcher对象。
3、访问Servlet容器中的其他Web应用
1)getContext(String uripath):根据参数指定的URI , 返回当前Servlet容器中其他Web应用的ServletContext对象。
4、访问Servlet容器的相关信息
1)getMajorVersion():返回Servlet容器支持的Java Servlet API的主版本号。 2)getMinorVersion();返回Servlet容器支持的Java Servlet API的次版本号。 3)getServletInfo():返回Servlet容器的名字和版本。
5、访问服务器端的文件系统资源
1)getRealPath(String path):根据参数指定的虚拟路径,返回文件系统中的一个真实路径。 2)getResource(String path):返回一个映射到参数指定的路径的URL。 3)getResourceAsStream(String path):返回一个用于读取参数指定的文件的输入流。 4)getMimeType(String file):返回参数指定的文件的MIME类型。
6、输出日志
1)log(String msg)向Servlet的日志文件中写日志。 2)log(String message , java.lang.Throwable throwable):向Servlet的日志中写错误日志,以及异常的堆栈信息。 在ServletConfig接口中定义了getServletConfig()方法。 HttpServlet类继承GenericServlet类,而GenericServlet类实现了ServletConfig接口,因此,在HttpServlet类或GenericServlet类及其子类中都可以直接调用getServletConfig()方法,从而得到当前Web应用的ServletContext对象。 转载地址:http://tzqgi.baihongyu.com/