在劫难逃 发表于 2008-12-26 17:54:17

在GlassFish中配置数据源连接池

下面,我们将告诉你如何在你的服务器(比如:GlassFish和Tomcat)中配置一个数据源,并如何在Web应用程序中访问数据源。
GlassFish有一个基于web的管理接口,你可以通过来配置数据源,把你的浏览器指向http://localhost:4848,然后登录它,默认的用户名和密码是amin和adminadmin。
   
首先,配置一个数据库连接池。选择“连接池”> “新建”,进行常规配置:

www.ad119.cn/bbs/attachments/basic/20081226/20081226175454677801.jpg


在下一步中,指定数据库连接的属性:

www.ad119.cn/bbs/attachments/basic/20081226/20081226175459377802.jpg


    接着,你需要配置一个JDBC数据源,并命名为jdbc/xgtimes:

www.ad119.cn/bbs/attachments/basic/20081226/200812261754510977803.jpg

   
   
   
                  
最后,你还需要把数据库驱动类拷贝到服务器的域目录的lib/ext目录下。
    在应用程序中,我们可以通过如下方法使用连接池:
    view plaincopy to clipboardprint?
    Public void loginBean() {
             try {
               Context ctx = new InitialContext();
               DataSource ds = (DataSource) ctx.lookup("jdbc/xgtimes");
               Connection conn = ds.getConnection();
            } catch (NamingException ex) {
               ex.printStackTrace();
             }
    }
    Public void loginBean() {
             try {
               Context ctx = new InitialContext();
               DataSource ds = (DataSource) ctx.lookup("jdbc/xgtimes");
               Connection conn = ds.getConnection();
            } catch (NamingException ex) {
               ex.printStackTrace();
             }
    }
   
    Java EE 5中要求将资源在web.xml中进行声明,对于一个数据源,可以在web.xml中这样配置:

    resource-ref>       <res-ref-name>jdbc/mydb</res-ref-name>
       <res-type>javax.sql.DataSource</res-type>
       <res-auth>Container</res-auth>
    </resource-ref>
    <resource-ref>
         <res-ref-name>jdbc/mydb</res-ref-name>
         <res-type>javax.sql.DataSource</res-type>
         <res-auth>Container</res-auth>
      </resource-ref>
    注意:jdbc/xgtimes用于数据源的名称,有两种查询方式,上面我们使用ctx.lookup,另外一种最简洁的方法就是使用资源注入,你在受管bean中声明一个域,然后象如下那样使用注释来标记它:
    view plaincopy to clipboardprint?@Resource(name="jdbc/mydb")   private DataSource source;    @Resource(name="jdbc/mydb")
      private DataSource source;
    当服务器加载受管bean时,域就会自动初始化。这种特性仅限于支持JavaEE5标准的服务器    上一页
页: [1]
查看完整版本: 在GlassFish中配置数据源连接池