web-dev-qa-db-fra.com

Configuration de la source de données Oracle pour Spring

Dans le framework Spring, comment est configurée une source de données Oracle?

18
mauryat

Dans le fichier context.xml :

<bean id="dataSource" class="Oracle.jdbc.pool.OracleDataSource">
    <property name="dataSourceName" value="ds"/>
    <property name="URL" value="jdbc:Oracle:thin:@<hostname>:<port_num>:<SID>"/>
    <property name="user" value="dummy_user"/>
    <property name="password" value="dummy_pwd"/>
</bean>

Exemple d'URL: jdbc: Oracle: thin: @ abc.def.ghi.com: 1234: TEAM4

29
mauryat

1. Comme le pilote JDBC Oracle n'est pas dans le référentiel Maven , téléchargez-le depuis http://www.Oracle.com/technetwork/database/features/jdbc/default-2280470.html (par exemple Oracle Database 12.1.0.2 JDBC Driver) et ajoutez ce pilote via la commande Maven comme suit:

(dans mon cas)

mvn install:install-file -Dfile=D:\Downloads\Java\ojdbc7.jar -DgroupId=com.Oracle -DartifactId=ojdbc7 -Dversion=12.1.0.2 -Dpackaging=jar

2. Ajoutez dans pom.xml

 <dependency>
     <groupId>com.Oracle</groupId>
     <artifactId>ojdbc7</artifactId>
     <version>12.1.0.2</version>
 </dependency>

3. Ajoutez le fichier application.properties

spring.datasource.url=jdbc:Oracle:thin:@localhost:1521:xe
spring.datasource.username=hr
spring.datasource.password=hr
spring.datasource.driver-class-name=Oracle.jdbc.driver.OracleDriver
11
ukchaudhary

Notez que vous souhaiterez peut-être ajouter à ce qui précède que le pilote Oracle ne possède pas de licence open source, il ne sera donc pas dans le référentiel central Maven. Vous devrez l'ajouter à votre référentiel local.

Pour ce faire: Obtenez le pilote que vous souhaitez auprès de: http://www.Oracle.com/

Ou vous pouvez l'obtenir à partir de votre installation Oracle: {Oracle_HOME}\jdbc\lib\ojdbc6.jar

Exécutez ensuite la commande maven suivante:

mvn install:install-file -Dfile={Path/to/your/ojdbc.jar} -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar

Cela devrait l'installer dans votre référentiel local, donc lorsque vous le référencez comme l'indique user640378 ci-dessus, cela devrait fonctionner correctement.

6
raghera
<bean id="dataSource" class="org.Apache.commons.dbcp.BasicDataSource">
    <property name="dataSourceName" value="Oracle.jdbc.driver.OracleDriver" />
    <property name="URL" value="jdbc:Oracle:thin:@localhost:1521:XE" />
    <property name="username" value="hr" />
    <property name="password" value="hr" />
    <property name="initialSize" value="1" />
    <property name="maxActive" value="5" />
</bean>
0