注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

北漂的小羊

Java编程,开发者,程序员,软件开发,编程,代码。新浪微博号:IT国子监

 
 
 

日志

 
 
关于我

在这里是面向程序员的高品质IT技术学习社区,是程序员学习成长的地方。让我们更好地用技术改变世界。请关注新浪微博号: IT国子监(http://weibo.com/itguozijian)

网易考拉推荐

GlassFish 配置数据库连接池(DB2、MySql 为例)  

2012-11-29 18:28:27|  分类: glassfish |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

GlassFish 是一款强健的商业兼容应用服务器,达到产品级质量,可免费用于开发、部署和重新分发。

1. 调用ConnectionPool 使用jndi 查找

 

在这个目录下有模板

glassfish-3.1.1\lib\install\templates\resources\jdbc

 

2. 这里我们以DB2和MySQL数据库为例

 

 

Xml代码 
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!--  
  3.   
  4.     DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.  
  5.   
  6.     Copyright (c) 1997-2010 Oracle and/or its affiliates. All rights reserved.  
  7.   
  8.     The contents of this file are subject to the terms of either the GNU  
  9.     General Public License Version 2 only ("GPL") or the Common Development  
  10.     and Distribution License("CDDL") (collectively, the "License").  You  
  11.     may not use this file except in compliance with the License.  You can  
  12.     obtain a copy of the License at  
  13.     https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html  
  14.     or packager/legal/LICENSE.txt.  See the License for the specific  
  15.     language governing permissions and limitations under the License.  
  16.   
  17.     When distributing the software, include this License Header Notice in each  
  18.     file and include the License file at packager/legal/LICENSE.txt.  
  19.   
  20.     GPL Classpath Exception:  
  21.     Oracle designates this particular file as subject to the "Classpath"  
  22.     exception as provided by Oracle in the GPL Version 2 section of the License  
  23.     file that accompanied this code.  
  24.   
  25.     Modifications:  
  26.     If applicable, add the following below the License Header, with the fields  
  27.     enclosed by brackets [] replaced by your own identifying information:  
  28.     "Portions Copyright [year] [name of copyright owner]"  
  29.   
  30.     Contributor(s):  
  31.     If you wish your version of this file to be governed by only the CDDL or  
  32.     only the GPL Version 2, indicate your decision by adding "[Contributor]  
  33.     elects to include this software in this distribution under the [CDDL or GPL  
  34.     Version 2] license."  If you don't indicate a single choice of license, a  
  35.     recipient has the option to distribute your version of this file under  
  36.     either the CDDL, the GPL Version 2 or to extend the choice of license to  
  37.     its licensees as provided above.  However, if you add GPL Version 2 code  
  38.     and therefore, elected the GPL Version 2 license, then the option applies  
  39.     only if the new code is made subject to such option by the copyright  
  40.     holder.  
  41.   
  42. -->  
  43.   
  44. <!DOCTYPE resources PUBLIC "-//Sun Microsystems Inc.//DTD Application Server 9.0 Domain//EN" "*<install directory>/lib/dtds/sun-resources_1_3.dtd*">  
  45.   
  46. <!--  
  47.     Sun bundled DataDirect driver for Oracle Databases. (Available in SJSAS EE builds)  
  48.     JAR files for the driver are smdb2.jar, smbase.jar, smutil.jar  
  49.   
  50.     To learn more on JDBC resources, pl. refer to JDBC resources chapter of admin guide.  
  51.     Administration Guide >> JDBC Resources  >> Configurations for Specific JDBC Drivers  
  52.     http://docs.sun.com/app/docs/doc/819-3658/6n5s5nklk?a=view  
  53.   
  54.     For detailed explanation of attributes and elements of this resources xml  
  55.     pl. refer to sun-resources_1_3.dtd  
  56. -->  
  57.   
  58. <resources>  
  59.     <jdbc-connection-pool  
  60.         name="db2_dd_pool"  
  61.         datasource-classname="com.sun.sql.jdbcx.db2.DB2DataSource"  
  62.         res-type="javax.sql.DataSource">  
  63.         <property name="user" value="DB_USER"/>  
  64.         <property name="password" value="DB_PASSWORD"/>  
  65.         <property name="serverName" value="DB_HOSTNAME"/>  
  66.         <property name="url" value="jdbc:sun:db2://DB_HOSTNAME:50000;databaseName=DATABASE_NAME"/>  
  67.         <property name="portNumber" value="50000"/>  
  68.         <property name="databaseName" value="DATABASE_NAME"/>  
  69.     </jdbc-connection-pool>  
  70.   
  71.     <jdbc-resource  
  72.         enabled="true"  
  73.         jndi-name="jdbc/db2_dd_resource"  
  74.         object-type="user"  
  75.         pool-name="db2_dd_pool"/>  
  76. </resources>  

 

 

MySql 连接池

 

 

Xml代码 
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!--  
  3.   
  4.     DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.  
  5.   
  6.     Copyright (c) 1997-2010 Oracle and/or its affiliates. All rights reserved.  
  7.   
  8.     The contents of this file are subject to the terms of either the GNU  
  9.     General Public License Version 2 only ("GPL") or the Common Development  
  10.     and Distribution License("CDDL") (collectively, the "License").  You  
  11.     may not use this file except in compliance with the License.  You can  
  12.     obtain a copy of the License at  
  13.     https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html  
  14.     or packager/legal/LICENSE.txt.  See the License for the specific  
  15.     language governing permissions and limitations under the License.  
  16.   
  17.     When distributing the software, include this License Header Notice in each  
  18.     file and include the License file at packager/legal/LICENSE.txt.  
  19.   
  20.     GPL Classpath Exception:  
  21.     Oracle designates this particular file as subject to the "Classpath"  
  22.     exception as provided by Oracle in the GPL Version 2 section of the License  
  23.     file that accompanied this code.  
  24.   
  25.     Modifications:  
  26.     If applicable, add the following below the License Header, with the fields  
  27.     enclosed by brackets [] replaced by your own identifying information:  
  28.     "Portions Copyright [year] [name of copyright owner]"  
  29.   
  30.     Contributor(s):  
  31.     If you wish your version of this file to be governed by only the CDDL or  
  32.     only the GPL Version 2, indicate your decision by adding "[Contributor]  
  33.     elects to include this software in this distribution under the [CDDL or GPL  
  34.     Version 2] license."  If you don't indicate a single choice of license, a  
  35.     recipient has the option to distribute your version of this file under  
  36.     either the CDDL, the GPL Version 2 or to extend the choice of license to  
  37.     its licensees as provided above.  However, if you add GPL Version 2 code  
  38.     and therefore, elected the GPL Version 2 license, then the option applies  
  39.     only if the new code is made subject to such option by the copyright  
  40.     holder.  
  41.   
  42. -->  
  43.   
  44. <!DOCTYPE resources PUBLIC "-//Sun Microsystems Inc.//DTD Application Server 9.0 Domain//EN" "*<install directory>/lib/dtds/sun-resources_1_3.dtd*">  
  45.   
  46. <!--  
  47.     MySQL Type 4 Driver  
  48.     The JAR file for the MySQL driver is mysql-connector-java-version-bin-g.jar,   
  49.     for example, mysql-connector-java-5.0.5-bin.jar.  
  50.   
  51.     To learn more on JDBC resources, pl. refer to JDBC resources chapter of admin guide.  
  52.     Administration Guide >> JDBC Resources  >> Configurations for Specific JDBC Drivers  
  53.     http://docs.sun.com/app/docs/doc/819-3658/6n5s5nklk?a=view  
  54.   
  55.     For detailed explanation of attributes and elements of this resources xml  
  56.     pl. refer to sun-resources_1_3.dtd  
  57.   
  58.     ======================================================================================================  
  59.     |  res-type                             datasource-classname                                         |  
  60.     ======================================================================================================  
  61.     |  javax.sql.DataSource                 com.mysql.jdbc.jdbc2.optional.MysqlDataSource                |  
  62.     |  javax.sql.ConnectionPoolDataSource   com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource  |  
  63.     |  javax.sql.XADataSource               com.mysql.jdbc.jdbc2.optional.MysqlXADataSource              |  
  64.     ======================================================================================================  
  65. -->  
  66.   
  67. <resources>  
  68.     <jdbc-connection-pool   
  69.         name="mysql5-pool"   
  70.         datasource-classname="com.mysql.jdbc.jdbc2.optional.MysqlDataSource"  
  71.         res-type="javax.sql.DataSource">  
  72.         <property name="user" value="root"/>  
  73.         <property name="password" value="123456"/>  
  74.         <property name="url" value="jdbc:mysql://localhost:3306/itmanager"/>  
  75.     </jdbc-connection-pool>  
  76.   
  77.     <jdbc-resource   
  78.         enabled="true"   
  79.         jndi-name="jdbc/mysql52"   
  80.         object-type="user"   
  81.         pool-name="mysql5-pool"/>  
  82. </resources>   

 

 

 

 

3. 在GlassFish 工作域中注册配置信息domain.xml

glassfish-3.1.1\domains\domain1\config

 

 

Xml代码 
  1. <resources>  
  2.     <jdbc-resource pool-name="mysql5-pool" jndi-name="jdbc/mysql52"></jdbc-resource>  
  3.     <jdbc-resource pool-name="SamplePool" jndi-name="jdbc/sample"></jdbc-resource>  
  4.     <jdbc-resource pool-name="__TimerPool" jndi-name="jdbc/__TimerPool" object-type="system-admin"></jdbc-resource>  
  5.     <jdbc-resource pool-name="DerbyPool" jndi-name="jdbc/__default"></jdbc-resource>  
  6.     <jdbc-connection-pool datasource-classname="com.mysql.jdbc.jdbc2.optional.MysqlDataSource" res-type="javax.sql.DataSource" name="mysql5-pool">  
  7.       <property name="user" value="root"></property>  
  8.       <property name="password" value="123456"></property>  
  9.       <property name="url" value="jdbc:mysql://localhost:3306/itmanager"></property>  
  10.     </jdbc-connection-pool>  
  11.     <jdbc-connection-pool datasource-classname="org.apache.derby.jdbc.EmbeddedXADataSource" res-type="javax.sql.XADataSource" name="__TimerPool">  
  12.       <property name="databaseName" value="${com.sun.aas.instanceRoot}/lib/databases/ejbtimer"></property>  
  13.       <property name="connectionAttributes" value=";create=true"></property>  
  14.     </jdbc-connection-pool>  
  15.     <jdbc-connection-pool datasource-classname="org.apache.derby.jdbc.ClientDataSource" is-isolation-level-guaranteed="false" res-type="javax.sql.DataSource" name="DerbyPool">  
  16.       <property name="PortNumber" value="1527"></property>  
  17.       <property name="Password" value="APP"></property>  
  18.       <property name="User" value="APP"></property>  
  19.       <property name="serverName" value="localhost"></property>  
  20.       <property name="DatabaseName" value="sun-appserv-samples"></property>  
  21.       <property name="connectionAttributes" value=";create=true"></property>  
  22.     </jdbc-connection-pool>  
  23.     <jdbc-connection-pool datasource-classname="org.apache.derby.jdbc.ClientDataSource" res-type="javax.sql.DataSource" name="SamplePool">  
  24.       <property name="DatabaseName" value="sample"></property>  
  25.       <property name="User" value="app"></property>  
  26.       <property name="Password" value="app"></property>  
  27.       <property name="URL" value="jdbc:derby://localhost:1527/sample"></property>  
  28.       <property name="PortNumber" value="1527"></property>  
  29.       <property name="serverName" value="localhost"></property>  
  30.     </jdbc-connection-pool>  
  31.     <jdbc-resource pool-name="mysql5-pool" description="" jndi-name="mysql5"></jdbc-resource>  
  32.     <jdbc-connection-pool driver-classname="" datasource-classname="com.mysql.jdbc.jdbc2.optional.MysqlDataSource" res-type="javax.sql.DataSource" description="" name="uml">  
  33.       <property name="user" value="root"></property>  
  34.       <property name="password" value="123456"></property>  
  35.       <property name="url" value="jdbc:mysql://localhost:3306/itmanager"></property>  
  36.     </jdbc-connection-pool>  
  37.     <jdbc-resource pool-name="uml" description="" jndi-name="qqq"></jdbc-resource>  
  38.   </resources>  
 

 

启动glassfish 服务器OK

 

使用Context API查找DataSource 

 

 

Java代码 
  1. public static DataSource getDataSource() throws NamingException {  
  2.         Context context = new InitialContext();  
  3.         return (DataSource)context.lookup("mysql5");  
  4.     }  

glassfish功能介绍:
  GlassFish社区实现了开源JavaEE5应用服务器。GlassFish是一款强健的商业兼容应用服务器,达到产品级质量,可免费用于开发、部署和重新分发。以下列出了应使用GlassFish的诸多原因。
  GlassFish是开源的、基于社区的JavaEE5实现。
  与早期的J2EE版本相比,JavaEE5有了巨大的改进(J1主题)。
  GlassFish达到产品级质量,具有非常好的性能,并具有可伸缩性。
  GlassFish用于SJSAS9.0、JavaEE5SDK和NetBeans5.5及以上版本。
  GlassFish已经得到了广泛的采用并受到分析家的关注。
  GlassFish已被其他公司使用,如用在TMaxSoft公司的JEUS6Preview中。
  GlassFish具备众多附加功能,包括JavaDB、JavaBlueprints和AJAX示例以及样例。
  GlassFish致力于开发您最喜欢的框架和应用程序。
  GlassFish具有大量的文档。
  GlassFish提供迁移工具支持。
  GlassFish具有产品级质量管理控制台和安全性支持。
  GlassFish在采用JPA方面走在最前面。
  GlassFishWeb服务栈十分出色,并在日益加强和完善。
  GlassFish的Grizzly实现了出众的Web层性能与灵活性。
  GlassFish提供了开发者支持、软件服务、培训、课程、论坛、博客以及其他更多资源。
  GlassFish支持AJAX和脚本。
  GlassFish提供平台和工具SOA支持,其中包括JBI和BPEL。
  GlassFish直接用于JavaEE5的官方参考实现。
  GlassFish是SunJavaSystemApplicationServer的代码库。
  GlassFish将合并SJSAS8.x中目前可用的企业功能。
  Maven系统信息库中包含了大量组件;很快会增加更多的组件。
  评论这张
 
阅读(1314)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016