powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Еще раз о MVC2
11 сообщений из 11, страница 1 из 1
Еще раз о MVC2
    #34065660
cub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cub
Гость
Почитал о MVC, нашел на форуме http://]http://www.sql.ru/forum/actualthread.aspx?tid=338030&hl=mvc+bean ,
но так и не понял, к примеру где нужно обрабатывать БД(ins.,upd.,sel.) и т.д.
К примеру в struts в простейшем случае это делаем в Action(хотя и не рекоменд.),
а где это правильно делать если мы не используем тот же struts, в jsp(view),в
servlet(controller),в bean ?
Если можно маленький примерчик.
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34065713
ТимоН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Маленький примерчик неполучится...
Я практически всегда делаю так: DO объект, DAO каторый из БД или еще откуда нибудь берет данные, некий Service класс каторый логически и функционально представляет бизнесс логику приложения. А в action'e работаем только с Service классом.
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34065890
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что непонятного? Action в Struts выполняет роль контроллера. JSP-страницы роль View. Сделайте класс (возможно Bean) который будет выполнять действия с БД - это будет Model.
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34066511
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТимоНМаленький примерчик неполучится...
Я практически всегда делаю так: DO объект, DAO каторый из БД или еще откуда нибудь берет данные, некий Service класс каторый логически и функционально представляет бизнесс логику приложения. А в action'e работаем только с Service классом.
deja vu
Последнее время пришли практически к такой же архитекруте. Сейчас задумываюсь над рекомендациями комрада Фаулера по объединению уровней DO и Service. Кажется в этом есть какая-то логика.
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34066748
ТимоН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неподелитесь ссылками или документацией?
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34067042
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обсуждение . Там же есть ссылка на статью. Смысл в том как сбалансировать логику между бизнес сущностями и сервисами.

Мы тут с коллегой обсудили и все же вывод один. В бизнес сущностях только работа с полями этой сущности без каких-либо интеграционных моментов(XML, Persistence и пр).
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34067950
cub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cub
Гость
KachalovСделайте класс (возможно Bean) который будет выполнять действия с БД - это будет Model
и
ТимоНService класс каторый логически и функционально представляет бизнесс логику приложения
Это все ясно, но откуда вызывать эти класы из контроллера?
авторК примеру в struts это делаем в Action
2Kachalov в Struts Action не контроллер, а компонент модели.
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34067990
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cubв Struts Action не контроллер, а компонент модели.
- может я чего-то не понимаю, так как сам Struts не использую, но вот тут по русски написано обратное :)
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34068119
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KachalovСделайте класс (возможно Bean) который будет выполнять действия с БД - это будет Model.

Истинно так. У меня это обычно класс типа Session Bean, который я обзываю Executor который содержит в себе все методы, которые выполняют нужные в приложении операции с базой данных - добваление / обновление / удаление / чтение. Обычно я создаю пул объектов этого класса. При активации объект Executor из пула берет соединение с БД (из другого отдельного пула), при пассивации соединение возвращает. В случае использования Hibernate или другого ORM при активации объект Executor содержит в себе ORM сессию, при активации сессию соединяет с БД (reconnect), при пассивации сессию закрывает. Все очень удобно и эффективно.

В терминологии ТимоН это есть не что иное, как его "DO объект, DAO каторый из БД или еще откуда нибудь берет данные, некий Service класс".

Пул таких объектов большого смысла не имеет, но уменьшает объем работы для GC. Кроме того, при количестве методов 200 и более в приличном приложении время создания объекта Executor становится соизмеримо со временем его доставания из пула, что в сочетании с экономией на GC уже придает пулу смысл. Тем более для Wев-приложения, где на каждый запрос, требующий Model, надо либо создать Executor, либо достать его из пула.

Этот подход у меня одинаков при использовании Struts и JSF.
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34069262
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cub2Kachalov в Struts Action не контроллер, а компонент модели.
Ерунда. Struts Action это контроллер для web уровня, который трансформирует пользовательский ввод в бизнес сущность (Модель). Вызывает бизнес логику (Обратно Модель), и выбирает View для представления пользователю.

На лицо все признаки контроллера. А компонентность к MVC не надо приплетать. Это совсем другая тема.
...
Рейтинг: 0 / 0
Еще раз о MVC2
    #34069283
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
М.Голованов
Истинно так. У меня это обычно класс типа Session Bean, который я обзываю Executor который содержит в себе все методы, которые выполняют нужные в приложении операции с базой данных - добваление / обновление / удаление / чтение. Обычно я создаю пул объектов этого класса. При активации объект Executor из пула берет соединение с БД (из другого отдельного пула), при пассивации соединение возвращает. В случае использования Hibernate или другого ORM при активации объект Executor содержит в себе ORM сессию, при активации сессию соединяет с БД (reconnect), при пассивации сессию закрывает. Все очень удобно и эффективно.


Чревато ядерной смесью бизнес логики и нюансов работы с БД.

М.Голованов
В терминологии ТимоН это есть не что иное, как его "DO объект, DAO каторый из БД или еще откуда нибудь берет данные, некий Service класс".

Ну персисттите Вы наверно другие объекты. Так что ваш бин это смесь сервиса и доступа к данным.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Еще раз о MVC2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]