Java Spring MVC Конфигурация внешней базы данных проекта с файлом .properties - PullRequest
0 голосов
/ 07 августа 2020

Я пытаюсь настроить внешнюю конфигурацию с помощью файла свойств. bean-компонент dataSource определен в файле security-context- xml, а hibernate.cfg. xml использует их для информации базы данных и sessionFactory. Мне нужна внешняя конфигурация источника данных с зашифрованным паролем.

Используемый код следующий:

<context:property-placeholder
    location="classpath:sample.properties" ignore-unresolvable="true" />

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

<bean id="sessionFactory"
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="configLocation"
        value="classpath:hibernate.cfg.xml" />
</bean>

И файл sample.properties:

jdb c .url = "* **** "

jdb c .username =" **** "

jdb c .password =" **** "

Это не сработало и выдает исключение:

Caused by: java.sql.SQLException: Cannot create JDBC driver of class 'oracle.jdbc.OracleDriver' for connect URL '${jdbc.url}'
    at org.apache.commons.dbcp2.BasicDataSource.createConnectionFactory(BasicDataSource.java:2023)
    at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:1897)
    at org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:1413)
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:139)
    at org.hibernate.internal.AbstractSessionImpl$NonContextualJdbcConnectionAccess.obtainConnection(AbstractSessionImpl.java:380)
    at org.hibernate.engine.jdbc.internal.LogicalConnectionImpl.obtainConnection(LogicalConnectionImpl.java:228)
    ... 56 more
...