servlet-servletContext简述

Posted .

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet-servletContext简述相关的知识,希望对你有一定的参考价值。

servletContext是servlet中的一个接口,但是更像一个容器。

servletContext的作用:

1.共享servlet数据:

通过this.getServletContext().setAttribute("名字",变量名)    /*传值进去*/

 

通过this.getServletContext().getAttribute("名字")  /*取值出来*/

这样能在项目中的所用servlet中共享数据。

2.servlet转发:

通过RequestDispatcher rd = this.getServletContext().getRequestDispatcher("/1.jsp");

      rd.forward(request, response);
在servlet中并不适合做输出,这时候可以通过转发用jsp输出。  
 
3.在配置文件中用<context-param>初始化参数,在加载web应用的时候,能自动封装到ServletContext中,在所有servlet中都可以直接取
 
4.读取web应用中的资源文件:

InputStream in = this.getServletContext().getResourceAsStream("/db.properties");
Properties pros = new Properties();
pros.load(in);
String url = pros.getProperty("url");

很多时候可以用来读取连接数据库信息

 

5.普通java程序读取web中的资源文件

如果读取资源文件的程序不是servlet的话,就只能通过类装载器去读了(类加载器(用来把Java 类动态的加载到 Java 虚拟机中。)


String path = UserDao.class.getClassLoader().getResource("test.properties").getPath();
FileInputStream in = new FileInputStream(path);
Properties dbconfig = new Properties();
dbconfig.load(in);
String url = dbconfig.getProperty("url");

类装载器只会装载一次,服务器发现里面有内存里有有装载文件就不会在装载了。
通过类加载的方式得到资源文件的位置,在通过传统方式读取资源文件的数据,这样可以读到更新后的数据。

 
 











以上是关于servlet-servletContext简述的主要内容,如果未能解决你的问题,请参考以下文章

网络七层协议简述

简述计算机网络

简述软件开发中B/S模式和C/S模式的原理,相比较而言B/S都有哪些优点?

JAVAWeb01-BS架构简述HTML

简述CDN的工作原理

python re 模块 findall 函数用法简述