----------------------------[url=http://www.itheima.com]android培训[/url]、[url=http://www.itheima.com]java培训[/url]、期待与您交流!----------------------------------
1.两种获取servletContext对象的方式
2.用context对象实现数据共享
3.获取ServletContext的共享数据
4.通过servletContext,获取为web应用配置的初始化参数
5.通过servletContext获取文件的mime类型
6.通过servletContext 实现请求转发
读取配置文件的各种方法:
方法一:
方法二:
方法三:
方法四:
1.两种获取servletContext对象的方式
ServletContext context = this.getServletConfig().getServletContext();
ServletContext context1 = this.getServletContext();
2.用context对象实现数据共享
context.setAttribute("data", "aaaaaaaaaa");
3.获取ServletContext的共享数据
context.getAttribute("data")
4.通过servletContext,获取为web应用配置的初始化参数
String url = this.getServletContext().getInitParameter("url");
String username = this.getServletContext().getInitParameter("username");
String password = this.getServletContext().getInitParameter("password");
<context-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:3306/test</param-value>
</context-param>
<context-param>
<param-name>username</param-name>
<param-value>root</param-value>
</context-param>
<context-param>
<param-name>password</param-name>
<param-value>root</param-value>
</context-param>
5.通过servletContext获取文件的mime类型
String filename = "1.jpg";
ServletContext context = this.getServletContext();
System.out.println(context.getMimeType(filename));
6.通过servletContext 实现请求转发
//servlet收到请求产生数据,然后转交给jsp显示
String data = "aaaaaa";
this.getServletContext().setAttribute("data", data);
RequestDispatcher rd = this.getServletContext().getRequestDispatcher("/view.jsp");
rd.forward(request, response);
读取配置文件的各种方法:
方法一:
ServletContext context = this.getServletContext();
InputStream in = context.getResourceAsStream("/db.properties");
Properties prop = new Properties(); //map
prop.load(in);
String url = prop.getProperty("url");
String username = prop.getProperty("username");
String password = prop.getProperty("password");
System.out.println(url);
System.out.println(username);
System.out.println(password);
方法二:
ServletContext context = this.getServletContext();
String realpath = context.getRealPath("/db.properties"); //c:\\sdsfd\sdf\db.properties
//获取到操作文件名 realpath=abc.properties
String filename = realpath.substring(realpath.lastIndexOf("\\")+1);
System.out.println("当前读到的文件是:" + filename);
FileInputStream in = new FileInputStream(realpath);
Properties prop = new Properties();
prop.load(in);
String url = prop.getProperty("url");
String username = prop.getProperty("username");
String password = prop.getProperty("password");
System.out.println("文件中有如下数据:");
System.out.println(url);
System.out.println(username);
System.out.println(password);
方法三:
ServletContext context = this.getServletContext();
URL url = context.getResource("/resource/db.properties");
InputStream in = url.openStream();
方法四:
InputStream in = this.getServletContext().getResourceAsStream("/WEB-INF/classes/db.properties");
Properties prop = new Properties(); //map
prop.load(in);
String url = prop.getProperty("url");
String username = prop.getProperty("username");
String password = prop.getProperty("password");
System.out.println(url);
System.out.println(username);
System.out.println(password);