当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

配置BEA WebLogic 8.1 JDBC衔接[Java编程]

赞助商链接



  本文“配置BEA WebLogic 8.1 JDBC衔接[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

本文描写了BEA WebLogic 8.1 Server中各种与JDBC相关功效的配置.固然我们利用了Oracle 8.1.7作为我们的示例数据库管理系统(DBMS),但是只要其他关系数据库供应通过JDBC的衔接,便可以很简单地把普通性的概念转移到这些数据库上.

JDBC是尺度的Java API,几近全部需求拜候数据库的J2EE利用程序都直接或间接地利用了它.在BEA WebLogic 8.1中,配置JDBC衔接包含成立和配置两个主要的工件——JDBC衔接池和数据源.与这两个主要工件相关的是其他次要的可配置工件,比方多池或数据源工厂.

衔接池还是多池?

在深化谈论若何成立和配置衔接池之前,我们需求扼要地看一看需求利用衔接池的缘由.

假如您没有利用JDBC衔接池拜候数据库,那么为了成立到数据库的衔接,您将需求举行以下步骤:

加载JDBC驱动程序类.

成立JDBC驱动程序的一个实例,并把它注册到驱动程序管理器中.

通过供应一个数据库URL和其他所需的参数,从驱动程序管理器中得到一个到数据库的衔接.

完成之后关闭衔接.

与这种一次一个衔接的办法相比,衔接池是数据库衔接的一个现存调集,并且可以在多个活动的J2EE利用程序中回收这些数据库衔接.衔接池中的衔接是开放的,可用于拜候.利用程序利用一个衔接之后,这个衔接没有被销毁,而是被返回到衔接池中,随后可认为其他利用程序所用.通过节俭与频繁成立和断开数据库衔接相关的计算资源,衔接池提高了数据库拜候的性能,特别是在负载顶峰期内.

多池是衔接池的调集.多池的主要目的是提高可用性和在一组衔接池间实现负载均衡.

为什么利用数据源?

一个数据源就是一个供应对衔接池或多池拜候的Java命名和目录接口(Java Naming and Directory Interface,JNDI)对象.衔接池或多池关于配置数据源是必须的.可以利用事件属性来配置数据源.非事件性的数据源用于本地事件;而事件性的数据源用于分布式事件.

数据源封装了对数据库的拜候,躲藏了拜候衔接池或多池所触及的细节.别的,数据源使配置数据库衔接的事件性特点变得简单.

JDBC Data Source Factory是一个JNDI对象,企业利用程序利用它从利用程序范围内的衔接池中得到衔接.

JDBC驱动程序设置

在WebLogic Server和 DBMS之间成立衔接所需的JDBC驱动程序分为两种范例:Type 2和 Type 4. Type 2 JDBC驱动程序需求本地库.利用Type 2 JDBC驱动程序时,需求把到WebLogic同享库(或动态链接库)目录的途径<WEBLOGIC>\server\bin\oci817_8和到Oracle客户端库目录的途径<ORACLE>\bin增添到系统变量< PATH >的开首部份.

WebLogic 8.1 Server安装在< WEBLOGIC >目录中.Oracle 8.1.7数据库安装在< ORACLE >目录中.< PATH >是WebLogic Server Path变量.

关于Type 2和 Type 4驱动程序来说,在WebLogic Server CLASSPATH中,需求相关的JDBC驱动程序类来配置衔接池或数据源.把包含Oracle Type 2 JDBC驱动程序类的<ORACLE>\JDBC\lib\classes12.zip文件增添给<domain>/startWebLogic脚本文件中的<CLASSPATH>变量.

<CLASSPATH>:WebLogic Server Classpath变量.

<domain>:WebLogic Server Domain目录.

配置JDBC衔接池

目前,我们将考虑若何成立衔接池和配置与其相关的各种参数.

要成立一个JDBC衔接池,在Administration Console中右击JDBC>Connection Pools节点,然后挑选Configure a new JDBC Connection Pool.

这将显示一个Configure a JDBC Connection Pool画面.为Oracle数据库挑选Database Type – Oracle.挑选一个Database Driver,然后点击Continue按钮(拜见图1).

图1

随后显示Define Connection Properties画面.在这个画面中,指定一个Database Name、一个Database User Name和一个Password.点击Continue按钮.

随后显示Test DataBase Connection.在这个画面中,指定Driver Classname、URL和Properties字段的值.Driver Classname就是用于得到数据库衔接的驱动程序类名.URL是用于得到衔接的数据库URL.Properties是用于成立衔接的属性列表.

表1中指定了用于差别Oracle JDBC驱动程序的Driver Classname和URL设置.

表1 驱动程序类名和URL设置

在URL设置中,< host >是在<ORACLE>/network/ADMIN/tnsnames.ora文件中指定的HOST值,<port>是在tnsnames.ora文件中指定的PORT值,而<database>是数据库实例名称.

在Properties文本框中的设置是:

user=<user>

server=<database>

<user>是指定登录到Oracle数据库中的用户名.<database>是Oracle数据库实例名称.假如利用了Oracle瘦(Type 4)驱动程序,就不该该指定服务器属性.

点击Test Driver Configuration按钮,以测试JDBC Connection Pool.假如驱动程序配置测试成功,会显示一条“Connection successful”消息.假如驱动程序配置有错误,则会显示一条错误消息.

随后会显示Create and Deploy画面.在这个画面中,挑选一台服务器布置衔接池,然后点击Create and Deploy按钮来成立和布置一个JDBC衔接池.这将在被选中的服务器上成立和布置一个衔接池.也可以把它布置在多台服务器上.Administration Console中的JDBC>Connection Pools节点将会增添一个<JDBCConnection Pool>节点.<JDBCConnection Pool>是衔接池的名称.

要改正JDBC Connection Pool配置,点击JDBC>Connection Pools><JDBCConnection Pool>节点,然后挑选Configuration选项卡.要改正目标服务器,挑选Target and Deploy选项卡.挑选一台目标服务器,然后点击Apply按钮.挑选Connections选项卡以配置JDBC Connections属性.

衔接属性

Initial Capacity:成立衔接池时所成立的数据库衔接的数目.

Maximum Capacity: 衔接池中衔接的最大数目.

Capacity Increment: 衔接池容量在最大容量限制范围内的增量.

LoginDelay: 在成立每个物理数据库衔接之前要耽误的秒数.

Allow Shrinking: 将该项设置为true时,假如没有利用额外的衔接,则答应衔接池把容量减小到InitialCapacity.

Shrink Frequency: 在减小衔接池容量之前要等候的秒数.假如将Shrink Frequency设置为true,那么也必须将Allow Shrinking设置为true.

Test Frequency: 数据库衔接测试之间隔断的秒数.在每个Refresh Period时间隔断之后,假如设置了TestTableName,就会利用TestTableName测试未利用的数据库衔接.

Test Reserved Connections: 假如挑选了这个选项,服务器会在把衔接供应应客户端之前对其举行测试.

Test Created Connections: 假如挑选了这个选项,就会在成立一个JDBC衔接之后和在把它增添到JDBC衔接池中的可用衔接列表之前,对该JDBC衔接举行测试.

Test Released Connections: 假如挑选了这个选项,服务器就会在把衔接返回给衔接池之前对其举行测试.

Test Table Name: 用于JDBC衔接测试的数据库表名.假如指定了Test Frequency,并且挑选了Test Reserved Connections、Test Created Connections或Test Released Connections,则Table Name是必须的.

在配置Connections画面之后,挑选Apply按钮.

配置JDBC多池

一个多池就是衔接池的一个调集.在成立多池之前为多池配置衔接池.要成立和配置一个新的多池,右击Administration Console中的JDBC>Multi Pools节点,然后挑选Configure a New Multi Pool.

随后会显示Configuration画面.在Multi Pool Configuration画面中,指定Algorithm Type并挑选Create按钮.假如将Algorithm Type设置为“High availability”,那么在利用另一个池中的衔接之前,一个池中的全部可用连策应已经用完.假如将Algorithm Type设置为“Load balancing”,多池会将衔接恳求平均地分布给多池中的全部衔接池(拜见图2).

图2

挑选Pools选项卡,然后在Pools画面中挑选要增添到多池中的衔接池.点击Apply按钮.被选中的衔接池将被增添到多池中.衔接中利用的衔接池是基于Algorithm Type举行挑选的.

挑选Target and Deploy选项卡,然后在Target and Deploy画面中挑选一台目标服务器.点击Apply按钮.可以把一个多池布置在多台服务器上.Administration Console中的JDBC>Multi Pools节点将会增添一个<Multi Pool>节点.<Multi Pool>是多池的名称.

配置JDBC数据源

数据源是用于拜候衔接池或多池的JNDI对象.衔接池或多池关于成立数据源是必须的.衔接池关于成立事件性的数据源是必须的.应在成立数据源之前成立衔接池或多池.

要成立和配置数据源,在Administration Console中右击JDBC>Data Sources节点,然后挑选Configure a new JDBCTxData Source.

随后会显示Configuration画面.在Data Source Configuration画面中指定字段的设置.JNDI Name是数据源的JNDI途径.

挑选Honor Global Transactions,以成立一个事件性的(Tx)数据源.假如没有选中Honor Global Transactions,那么所成立的数据源就是非Tx数据源(拜见图3).

图3

随后会显示Connect to Connection Pool画面.在Pool Name字段中,从可用衔接池的列表中挑选一个JDBC衔接池,然后点击Continue按钮.数据源与被选中的衔接池相衔接.

随后会显示Target the Data Source画面.在这个画面中,挑选一台目标服务器,然后点击Continue按钮.这将在被选中的服务器上布置数据源,但是也可以在多台服务器上布置它.Administration Console中的JDBC>Data Sources节点将增添一个<JDBCData Source>节点.<JDBCData Source>是数据源的名称.要改正数据源配置,点击管理掌握台中的JDBC>Data Sources><JDBCData Source>节点,挑选Configuration选项卡.为了可以在一次服务器拜候中把每个Result Set的多个行从服务器取到外部客户端,挑选Row Prefetch Enabled并指定Row Prefetch Size.要为非XA的JDBC驱动程序启用全局事件,为非XA的驱动程序挑选Emulate Two-Phase Commit,并挑选Honor Global Transactions.要改正数据源的目标服务器,挑选Target and Deploy选项卡.挑选一台目标服务器,然后点击Apply按钮.

数据源和Tx数据源之对比

假如在数据源配置中挑选了Honor Global Transactions,数据源就是Tx数据源.数据源是和衔接池或多池一同利用的.Tx数据源和衔接池一同利用.数据源用于本地事件.Tx数据源用于分布式事件.

在下列情形下,应当利用Tx数据源而不是数据源:

利用容器托管的长期性实体bean.

在事件期间拜候多项资源.

在一个事件中举行多个数据库更新.

在多台服务器上利用同一个衔接池.

配置JDBC数据源工厂

JDBC数据源工厂是一项JNDI数据源资源.企业利用程序利用数据源工厂从利用程序范围内的衔接池中得到衔接.

要成立和配置一个JDBC数据源工厂,在Administration Console中右击JDBC>Data Source Factories节点,然后挑选Configure a new JDBCDataSourceFactory.

随后会显示Configuration画面.在这个画面中,指定URL、Driver Class Name、 Factory Name和Properties字段的值,然后点击Create按钮(拜见图4).


 

图4

Administration Console中的JDBC>Data Source Factories节点将增添一个<JDBCData Source Factory>节点.<JDBCData Source Factory>是数据源工厂的名称.要利用<JDBCData Source Factory>,需求重新启动服务器.

JDBC配置和服务器性能

下面列出了BEA针对 WebLogic Server的各种JDBC配置设置给出的倡议.

为了提高生产情势下服务器的性能:

在JDBC衔接池配置中,把InitialCapacity的值设置为等于 MaxCapacity.假如InitialCapacity的值小于MaxCapacity,那么当负载增添时,服务器就会成立额外的数据库衔接.在负载增添的情形下,必须分配资源以成立额外的数据库衔接,同时资源关于完成jdbc客户端恳求也是必须的.

把MaxCapacity的值设置为等于需求JDBC衔接的并发客户端会话的数目:为了肯定一个衔接池中的并发客户端会话,挑选该衔接池节点.挑选Monitoring选项卡.Active Connections栏中的值是并发客户端会话的平均数目.Connections High的值是并发客户端会话的最大数目.在布置利用程序和监督活动衔接之后,可以改正MaxCapacity的值.

当外部客户端通过WebLogic Server利用JDBC拜候数据库时,在数据源配置中挑选Row Prefetch Enabled:通过在一次服务器拜候中取多个行,行预取可以提高性能.

完毕语

按照上面概述历程,WebLogic开辟人员应当可以针对Oracle 8.1数据库配置BEA WebLogic 8.1 Server了.配置其他数据库近似于配置Oracle 8.1.把包含呼应数据库的驱动程序类的zip/jar文件增添给CLASSPATH变量,然后在JDBC衔接池配置中指定呼应的衔接URL和驱动程序类名.


  以上是“配置BEA WebLogic 8.1 JDBC衔接[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 配置BEA WebLogic 8.1 JDBC衔接
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .