版权声明
1. 本站文章和资源均来自互联网收集和整理,本站不承担任何责任及版权问题。
2. 相关版权归作者及其公司所有,仅供学习研究用途,请勿用于商业目的。
3. 若侵犯您的版权,请发邮件至webmaster@ishare1.cn联系我们,我们确认后将立即删除。
ServletConfig对象有四个方法。
getInitParameter、 getInitParameterNames、 getServletName
(1)getInitParameter、 getInitParameterNames用于获取Web.xml中的参数名、参数值。
(2)getServletName 获取 Web.xml中的 Servlet-name。
实例
下面是Web.xml的文件内容:
TestServletConfig com.djun.serveleMapping.TestServletConfig username admin passworld admin 1 TestServletConfig /servletConfig
import javax.servlet.*; import java.io.IOException; import java.util.Enumeration; public class TestServletConfig implements Servlet { @Override public void init(ServletConfig servletConfig) throws ServletException { System.out.println("Init TestServletConfig..."); System.out.println("-----------执行getInitParameter--------"); String username = servletConfig.getInitParameter("username"); String passworld = servletConfig.getInitParameter("passworld"); System.out.println("username: " + username+" "+"password : "+passworld); System.out.println("----------执行getInitParameterNames------"); Enumerationnames = servletConfig.getInitParameterNames(); while(names.hasMoreElements()){ String name = names.nextElement(); String value = servletConfig.getInitParameter(name); System.out.println("username: " + name+" "+"password : "+value); } String servletName = servletConfig.getServletName(); System.out.println(servletName); } @Override public ServletConfig getServletConfig() { return null; } @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("TestServletConfig...."); } @Override public String getServletInfo() { return null; } @Override public void destroy() { } }
getServletContext
(1)Servlet为每个Web应用程序都创建了一个对应的ServletContext对象,ServletContext对象被包含在ServletConfig对象中,通过调用 ServletContext.getServletContext()方法可以返回ServletContext对象的引用。
(2) 由于一个Web应用程序中的所有Servlet都共享同一个ServletContext对象,所以,ServletContext对象被称为application对象(也就是web应用程序对象)。
(1) getRealPath()
获取某一个文件在服务器上的绝对路径,注意:并非是部署前的路径。
注意我的下面文件存放的目录
(2) getContextPath()
获取当前Web应用的某一个文件对应的输入流。
System.out.println("getContextPath() -----------"); String contextPath = servletContext.getContextPath(); System.out.println(contextPath); String fileName = "application.properties"; try { File file = new File(realPath+ "/" + fileName); ClassLoader classLoader = getClass().getClassLoader(); InputStream is = classLoader.getResourceAsStream(realPath + "/" + fileName); System.out.println(realPath+ "/" + fileName); System.out.println("1. "+ is); } catch (Exception e) { e.printStackTrace(); }