Я изучаю Spring-MVC в моем первом проекте здесь.
После прочтения документации по транзакциям я заметил, что во всех примерах транзакции размещаются вокруг сервисных объектов / методов , а неDAO (объекты / методы доступа к данным).
Я задавался вопросом, почему.Не зная лучше, я бы подумал добавить транзакции вокруг большинства моих методов DAO , которые обращаются к базе данных (мое мышление: база данных = транзакции).У меня пока нет многих методов обслуживания, которые охватывают несколько DAO (но я думаю, это могло бы послужить причиной для обозначения служб как транзакционных).
Вопрос:
Я просто хочузнать, что другие делают в этой ситуации.Естественно ли вы проводите транзакции вокруг элемента самого низкого уровня, который вы можете (например, всегда вокруг DAO, и вокруг сервисов только тогда, когда они охватывают несколько DAO таким образом, который требует транзакций)?услуги в качестве генерального директора?Таким образом, придерживаясь одного слоя, потому что это более всеобъемлющее в долгосрочной перспективе?