1.在servlet中完全可以访问application scope中的对象,具体方法你自己参考一下API吧。
2.连接池一般是在应用服务器起来的时候就create了,应用服务器会预先创建指定数量的connection置于pool内。
3.当然有,initctx是一个JNDI的context,和conn有什么关系?连接池已经是非常成熟的技术,apache有dbcp,基本已经是个标准的connection pool,不用自己去重新造车轮,参考dbcp的文档吧。

解决方案 »

  1.   

    to: likeBean(喜欢吃咖啡豆)
    谢谢你的回答,我想问问,在某个jsp页面中我需要连接数据库,我需要调用
    Context initCtx=new InitialContext();
    DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/dbpool");
    Connection conn=ds.getConnection();
    以上三个语句获得连接吗?
    那在这个页面使用完资源后,要释放连接,我是要调用conn.close()吗?initCtx需要关闭吗?究竟这个new Initialcontext()有什么用?
    还有就是我创建的是局部连接池,也是在服务器启动的时候创建呢?不是在我运行web应用程序时候才创建的吗?
      

  2.   

    http://www.gz-okay.cn/ideagrace/html/doc/2005/06/30/00069.html
      

  3.   

    谢谢kenvinp(kenvinp),连接池的配置我都看过很多了,就是有些原理不懂,我想问问,在某个jsp页面中我需要连接数据库,我需要调用
    Context initCtx=new InitialContext();
    DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/dbpool");
    Connection conn=ds.getConnection();
    以上三个语句获得连接吗?
    那在这个页面使用完资源后,要释放连接,我是要调用conn.close()吗?initCtx需要关闭吗?究竟这个new Initialcontext()有什么用?
    还有就是我创建的是局部连接池,也是在服务器启动的时候创建呢?不是在我运行web应用程序时候才创建的吗?