public class ContextServletDemo1 extends HttpServlet {
/***
* servletContext的作用
* 1、实现数据共享
* 2、实现获取整个web引用初始化参数
* 3、实现请求转发(mvc)
* 4、实现资源文件读取
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// ServletConfig config = this.getServletConfig();
// config.getServletContext();
ServletContext context = this.getServletContext();
String name = context.getInitParameter("name");
System.out.println(name);
context.getRequestDispatcher("/result.jsp").forward(request, response);
}
private void test3() throws IOException {
ClassLoader loader = ContextServletDemo1.class.getClassLoader();
InputStream in = loader.getResourceAsStream("db.properties");
Properties prop = new Properties();
prop.load(in);
String driver = prop.getProperty("jdbc.driver");
System.out.println(driver);
}
private void test2() throws FileNotFoundException, IOException {
ServletContext context = this.getServletContext();
String path = context.getRealPath("/WEB-INF/classes/db.properties");
FileInputStream in = new FileInputStream(path);
Properties p = new Properties();
p.load(in);
String driver = p.getProperty("jdbc.driver");
String url = p.getProperty("jdbc.url");
String username = p.getProperty("jdbc.username");
String password = p.getProperty("jdbc.password");
System.out.println("driver:" + driver +" url:" + url+ " username:"+username );
}
private void test1() throws IOException {
ServletContext context = this.getServletContext();
InputStream input = context.getResourceAsStream("/WEB-INF/classes/db.properties");
Properties p = new Properties();
p.load(input);
String driver = p.getProperty("jdbc.driver");
String url = p.getProperty("jdbc.url");
String username = p.getProperty("jdbc.username");
String password = p.getProperty("jdbc.password");
System.out.println("driver:" + driver +" url:" + url+ " username:"+username );
}
}
本文通过一个具体的Servlet示例介绍了ServletContext的应用场景,包括数据共享、获取web应用初始化参数、请求转发及资源文件读取等。并通过不同的方法展示了如何加载配置文件。
1132

被折叠的 条评论
为什么被折叠?



