- ServletConfig类为servlet中配置信息的类,主要用于读取配置信息。
- 一个servlet对应一个ServletConfig对象。由Tomcat服务器创建且在默认情况下,是在用户发送第一次请求的时候创建。
- Tomcat服务器调用servlet对象的init方法的时候需要传一个ServletConfig对象的参数给init方法。
- 在servlet的配置文件web.xml中,可以使用一个或多个
标签为servlet配置一些初始化参数。
configServlet com.yaozong.servlet.xml.ConfigServlet username root password root configServlet /config
ServletConfig接口常用的方法:
public String getInitParameter(String name); // 通过初始化参数的name获取value public EnumerationgetInitParameterNames(); // 获取所有的初始化参数的name public ServletContext getServletContext(); // 获取ServletContext对象 public String getServletName(); // 获取Servlet的name
以上方法在servlet类当中,都可以使用this去调用。(因为GenericServlet实现了ServletConfig接口)
ServletContext- 一个servlet对象对应一个ServletContext(Servlet上下文),即对应一个web.xml文件。
- 在同一个webapp(同一个应用)当中,所有的servlet对象都是共享同一个ServletContext对象的(应用域)。
- ServletContext对象的生命周期:ServletContext对象在服务器启动阶段创建,在服务器关闭的时候销毁。(由Tomcat服务器在webapp启动时完成创建的)
- ServletContext接口中有哪些常用的方法?
public String getInitParameter(String name); // 通过初始化参数的name获取value public Enumeration
getInitParameterNames(); // 获取所有的初始化参数的name pageSize 10 startIndex 0 // 获取应用的根路径(非常重要),因为在java源代码当中有一些地方可能会需要应用的根路径,这个方法可以动态获取应用的根路径 public String getContextPath(); // 获取文件的绝对路径(真实路径) public String getRealPath(String path);
// 数据量小、所有用户共享、不需修改的数据放到ServletContext这个应用域当中,会大大提升效率。 // 向ServletContext应用域中存储数据,相当于将数据存放到缓存cache当中。 // 存(向ServletContext应用域中存数据) public void setAttribute(String name, Object value); // 取(从ServletContext应用域中取数据) public Object getAttribute(String name); // 删(删除ServletContext应用域中的数据) public void removeAttribute(String name);



