Oracle соединения весной - PullRequest
       9

Oracle соединения весной

2 голосов
/ 06 февраля 2009

Я использую тонкий драйвер Oracle 9 JDBC - строка подключения, которую я использовал для стандартного JDBC, была:

jdbcConn.connect("jdbc:oracle:thin:myDevDb/myDevDb@fooServer:1521:MYSIDNAME");

... просто пытаюсь разобраться с этим типом соединения в Spring 2.5.

Как подключить Spring к соединению Oracle - подумайте, что это как-то связано с файлом conifg XML, но не уверен, что есть несколько способов сделать это.

Любая помощь высоко ценится ...

ПОСЛЕДНИЕ РЕДАКТИРОВАТЬ

Спасибо тем, кто до сих пор ответил - но мне нужно немного "подняться" - в части, где вы настраиваете в настройке строки подключения к базе данных в вашей конфигурации, где вы помещаете эту информацию, и как? У меня есть существующее веб-приложение на Java - и я пытаюсь понять, как я «подковал» Spring в свое существующее приложение.

1 Ответ

8 голосов
/ 06 февраля 2009

Есть несколько способов сделать это, и это зависит от вашей среды. Если вы используете Spring, есть большая вероятность, что вы развертываете веб-приложение или иным образом находитесь в среде J2EE. Если это так (и, возможно, даже если это не так), вы, вероятно, захотите настроить источник данных.

Это довольно минимальное решение:

  <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName" value="${jdbc.driverClassName}"/>
    <property name="url" value="${jdbc.url}"/>
    <property name="username" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
  </bean>

Выше описано использование пула соединений с базой данных Apache (Jakarta Commons), но у вашего сервера приложений, вероятно, есть альтернатива, которую вы можете использовать вместо этого. Кроме того, разные поставщики баз данных также имеют свои собственные реализации источников данных (например, OracleDataSource и OracleXADataSource для Oracle).

Обратите внимание на использование таких свойств, как jdbc.username. Это типичная конфигурация, поскольку конфигурации базы данных обычно различаются в зависимости от среды. Вы можете активировать конфигуратор свойств, например:

<bean id="jdbcConfiguration" class="org.springframework.beans.factory.config.PropertiesPlaceholderConfigurer">
  <property name="location" value="classpath:jdbc.properties"/>
</bean>

Теперь вы, вероятно, тоже хотите транзакции, как я себе представляю. Самый простой способ - использовать диспетчер транзакций платформы, но, как и в большинстве случаев Spring, для этого есть несколько способов.

<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  <property name="dataSource" ref="dataSource"/>
</bean>

После этого вы можете использовать этот компонент напрямую или (возможно, более часто), вы можете использовать декларативные транзакции с AOP (аннотации).

Подробнее об этих предметах в (превосходной) Справочной документации Spring .

...