Oracle
 sql >> база данни >  >> RDS >> Oracle

Fuse 6.3 dbcp основен източник на данни

Използвам ojdbc6-11.2.0.3.jar и драйверът работи и в двете конфигурации.

Тествах го със заявка от JBoss Fuse Console

jdbc:query jdbc/oracle 'select * from somewhere.sometable WHERE rownum < 5'

Проверете дали JDBC и JNDI са инсталирани

features:install jdbc
features:install jndi

Можете да пуснете XML файл със следното съдържание в deploy/ за автоматично разполагане на източник на данни.

OracleDataSource

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">

    <bean id="oracleDSTest" class="oracle.jdbc.pool.OracleDataSource"
          destroy-method="close">
        <property name="URL" value="jdbc:oracle:thin:@db.host:1521:SID" />
        <property name="user" value="UrName" />
        <property name="password" value="YourPasswrd" />
    </bean>

    <service interface="javax.sql.DataSource" ref="oracleDSTest">
        <service-properties>
            <entry key="osgi.jndi.service.name" value="jdbc/oracle" />
            <entry key="datasource.name" value="oracleDSTest" />
        </service-properties>
    </service>
</blueprint>

BasicDataSource

<bean id="oracleDSTest" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
    <property name="url" value="jdbc:oracle:thin:@db.host:1521:SID"/>
    <property name="username" value="UrName"/>
    <property name="password" value="YourPasswrd"/>
    <property name="maxIdle" value="5" />
    <property name="minIdle" value="1" />
    <property name="initialSize" value="1" />
</bean>

<service interface="javax.sql.DataSource" ref="oracleDSTest">
    <service-properties>
        <entry key="osgi.jndi.service.name" value="jdbc/oracle" />
        <entry key="datasource.name" value="oracleDSTest" />
    </service-properties>
</service>

Зареждане на клас

Моля, имайте предвид, че тази версия на Oracle JDBC драйвера не е OSGi готов. За да накарате всичко да работи под OSGi, може да искате да експортирате класове на Oracle от системния пакет.
Копирайте ojdbc6-11.2.0.3.jar (или вашата версия) към lib/ папка на JBoss Fuse.
Редактиране на etc/config.properties и добавете пакетите към org.osgi.framework.system.packages собственост

org.osgi.framework.system.packages= \
  other.packages.here, \
  oracle.jdbc;version="11.2.0.3", \
  oracle.jdbc.driver;version="11.2.0.3", \
  oracle.jdbc.pool;version="11.2.0.3", \
  some.other.stuff

Рестартирайте и проверете с exports | grep oracle

JBossFuse:[email protected]> exports | grep oracle
     0 oracle.jdbc; version=11.2.0.3
     0 oracle.jdbc.driver; version=11.2.0.3
     0 oracle.jdbc.pool; version=11.2.0.3



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle Regexp се проваля в SQL

  2. ORA-02070:базата данни не се поддържа в този контекст

  3. Как да премахнете скритите двойни кавички в стойностите на колоните на SQL Developer

  4. Създайте функция за връщане на текущата дата и час в Oracle

  5. C#:Еквивалентност на типа данни на Oracle с OracleDbType