Spring JDBC над Hibernate - PullRequest
       1

Spring JDBC над Hibernate

0 голосов
/ 23 августа 2011

Я использую шаблон Struts и Spring jdbc прямо в своем приложении.
Мне нужно использовать шаблон Hibernate в нашем коде.
Может кто-нибудь сказать мне, почему я должен использовать шаблон Hibernate?
И что такоепроблема с использованием Spring jdbc шаблона?

Ответы [ 2 ]

3 голосов
/ 27 октября 2011

Есть две проблемы:

  • JdbcTemplate против Hibernate

JdbcTemplate полезен для вызова простых DAO, которые не соответствуют модели домена или просто небольшому количеству периода доступа к данным. Это также полезно, если у вас есть несколько хранимых процедур. Если у вас много хранимых процедур, лучше использовать iBatis (с которым Spring также интегрируется)

Hibernate требует определенной формы отображения, указанной в XML или аннотациях. Но как только вы выйдете за пределы нескольких DAO с помощью только нескольких методов, Hibernate сможет единообразно управлять объектно-реляционными сопоставлениями.

  • HibernateTemplate против обычного спящего режима SessionFactory. Обычно для доступа к Hibernate рекомендуется использовать API SessionFactory.getCurrentSession (). Однако Javadoc HibernateTemplate упоминает:

Этот класс можно рассматривать как прямую альтернативу работе с необработанным Hibernate3 Session API (через SessionFactory.getCurrentSession ()). Основным преимуществом является его автоматическое преобразование в DataAccessExceptions, а также возможность возврата к поведению в стиле «автоматической фиксации» при использовании вне транзакций.

Так что, если вы не планируете смешивать JDBC с Hibernate или просто предпочитаете иерархию DataAccessException в Spring, HibernateTemplate будет хорошим решением. Но если у вас нет особой причины для использования HibernateTemplate, прямой Hibernate (даже при использовании Spring TransactionProxyFactoryBean) - путь.

2 голосов
/ 23 августа 2011

Использование Spring Template (JDBC, Hibernate) экономит много усилий на очистке, управлении ресурсами и улучшенной обработке исключений.Оформить заказ по этой ссылке

http://www.vogella.de/articles/SpringJDBC/article.html

http://static.springsource.org/spring/docs/1.2.x/api/org/springframework/orm/hibernate/HibernateTemplate.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...