Перенос конфигурации контекста приложения в Spring 3.1 и спящий режим 4.0

#java #hibernate #spring #migration

#java #переход в спящий режим #spring #миграция

Вопрос:

Мне трудно найти документы по миграции. Я использовал sping 3.0.5 и спящий режим 3.4.

Я перешел на последние версии-кандидаты: Spring 3.1 и hibernate 4.0

Я смог без проблем реорганизовать свои классы, но контекст приложения для hibernate вызывает у меня проблемы, поскольку я не вижу никаких примеров того, как его настроить.

В частности:

 <bean id="sessionFactory"    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource" ref="dataSource"/>
    <property name="mappingResources">
        <list>...</list>
   </property>
    <property name="hibernateProperties">
        <props>
          ... 
          <prop key="hibernate.connection.provider_class">org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider</prop>
          <prop key="hibernate.cache.provider_class">????</prop>
          ...
        </props>
    </property>
</bean>
  

По-видимому, свойства dataSource , mappingResources и hibernateProperties больше не существуют, и я не уверен, что нужно вставлять в hibernate.connection.provider_class и hibernate.cache.provider_class .

И я продолжаю получать:

 Caused by: java.lang.ClassNotFoundException: org.hibernate.engine.FilterDefinition
  

при запуске приложения.

Ответ №1:

Насколько мне известно, Spring не поддерживает Hibernate 4. Если бы это произошло, я бы ожидал увидеть org.springframework.orm.hibernate4 пакет в списке пакетов 3.1.x, но его там нет. Я не думаю, что я видел какое-либо упоминание об этом в каких-либо примечаниях к выпуску или что-либо еще.

Другими словами, Spring работает нормально, но вы используете несовместимую версию Hibernate.

Комментарии:

1. jira.springsource.org/browse/…

Ответ №2:

dataSource все еще существует на основе JavaDoc для LocalSessionFactoryBean. Смотрите раздел в самом верху; в нем есть пример конфигурации со dataSource свойством. mappingResources также существует.

В справочном руководстве по Spring 3.1 также есть пример с dataSource и mappingResources .

В Hibernate 4 пока нет руководства по ссылке.