1. WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象,它代表当前web应用。
ServletConfig对象中维护了Servlet时,可以通过 方式一:ServletConfig.getServletContext()方法 方式二: this.getServletContext()方法 得到ServletContext对象。 2. 由于一个WEB应用中的所有Servlet共享同一个ServletContext对象,所以 多个Servlet通过ServletContext对象实现数据共享。ServletContext对象通常也被称之为 context域对象。 3.获取整个web应用的初始化参数 <context-param> <param-name>data</param-name> <param-value>xxxxxx</param-value> </context-param> 如:this.getServletContext().getInitParameter("data"); 4.Servlet的转发 RequstDispatcher rd=this.getServletContext().getRequestDispatcher("xxx.jsp");//注意因 ServletContext()被web应用内所有请求共享,多线程操作时,会产生安全问题,所以 实际开发中不会采用 ServletContext()将数据带给jsp。 re.forword(request,responst); 转发:举例:你找我借钱,我没有,我帮你找别人。 重定向:举例:你找我借钱,我没有,我提供一个人信息,叫你自己去找他。 5.ServletContext生命周期 产生:服务器启动时,会对每个web应用创建一个ServletContext,即webapps内个每个web应用。 销毁:服务器停止,或删除某web应用。 6.配置文件,一般两种类型 xml类型:用于数据是有关系的 properties类型:用于数据是没有关系的 A ServletContext 读取资源文件的实例: 方法一: // FileInputStream in=new FileInputStream("/WEB-INF/classes/db.properties");若要按传统方式读取资源文件,注意文件的路径,必须要服务的目录下有此文件即,C:\tomcat7\bin\ WEB-INF\classes\db.properties 方法二: InputStream in=this.getServletContext().getResourceAsStream(" /WEB-INF/classes/db.properties");// 注意路径 方法三:String path=this.getServletContext().getRealPath(" /WEB-INF/classes/db.properties" );//先得到绝对路径
Properties pros=new Properties();
pros.
load(in);
String url=pros.
getProperty("url");
String username=pros.getProperty("username");
String password=pros.getProperty("password");
B 如果读取资源文件的程序不是servlet的话(一般的类),就只能通过类加载器去读 实例A:类加载方式,虽可读取资源文件数据,但无法获取更新后的数据 private static Properties dbconfig=new Properties(); static{ try{ InputStream in=UserDao. class. getClassLoader().getResourceAsStream(" db.properties");// 注意路径,和文件不能太大,另外因为是通过类加载器,文件只读一次,若文件中途有被修改,将不起效果
dbconfig.load(in);
}catch(Exception e){
throw new ExceptionInInitializerError(e); } } 实例B:通过 类加载得到文件位置,再用 传统方式,获取资源文件实时数据 String path=UserDao.class.getClassLoader(). getResource("db.properties"). getPath();
FileInputStream in=new
FileInputStream(path);
Properties prop=new Properties();
prop.load(in);
|
servletContext
最新推荐文章于 2023-05-05 20:25:45 发布