Почему весна имеет класс jdbcdaosupport, но нет аналогового класса JMSSUpport?
-
26-10-2019 - |
Вопрос
Почему Весенняя каркас иметь класс JdbcDaoSupport
это требует DataSource
и создает JdbcTemplate
внутри, но не имеет аналогичного класса JmsSupport
Это может потребовать JMS ConnectionFactory
и создать JmsTemplate
?
Насколько я понимаю, цель класса JdbcDaoSupport
это устранить избыточные случаи JdbcTemplate
(один за DataSource
экземпляр) в контексте приложения. Вместо этого контейнер создает экземпляры приложения DAO, каждый из которых происходит от JdbcDaoSupport
, принимает уникальный DataSource
и предоставляет это DataSource
в JdbcDaoSupport
родительский экземпляр, который, в свою очередь, предоставляет его внутренним JmsTemplate
.
Почему весна не предоставляет аналогичный класс JmsSupport
это служит для уменьшения количества JmsTemplate
экземпляры в контексте приложения?
Решение
JdbcDaoSupport
чуть больше, чем пользователь JdbcTemplate
это также распространяется DaoSupport
. Анкет Он обеспечивает базовую реализацию шаблона проектирования DAO для JDBC, как и другие классы для Hibernate, JPA и других.
Многие люди не используют парадигму Дао; Вместо этого они определяют синглтон JdbcTemplate
что они вводят непосредственно в свой сервисный слой.
Для JMS есть - насколько я знаю - нет общего шаблона дизайна, как DAO, и нет других возможных вариантов в «пользователе JmsTemplate
". Вы должны использовать синглтон JmsTemplate
: Больше ничего нет.