powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / вопрос по паттерну MVC
25 сообщений из 25, страница 1 из 1
вопрос по паттерну MVC
    #33986475
Читал доку по паттерны MVC, красивая штука. Понятно View — представление jsp, contrioller — servlet который перенаправляет на определнные jsp, а вот Model — bean непонятно. По определению bean — это же просто жава класс, который играет роль маленькой БД в приложении, т.е. в него ложат какие-то значения, а потом их берут. Я так и не понял почему модель?
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33986480
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
потому что с помощью аннотаций вы можете замапить бин на таблицу - тогда
все автоматом будет сохраняться
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33986492
D.O.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Model может быть разделена на beans, представляющие данные из базы, и нечто, что заполняет эти beans данными из базы, сохраняет в базу данные из этих beans и управляет вопросами безопасности и многозадачности.
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33986521
ТимоН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИМХО лучше паттерны изучать на примерах, чтоб все не так обстрактно было. Гдето в сети была дока "Триада MVC в действии".
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33986644
шушпанчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
незнайка на жавеЧитал доку ... Я так и не понял почему модель?

Полгаю, речь идёт не о java beans в их натуральном понимании (являющихся по сути data transfer object для передачи данных на уровень представления или удалённому клиенту), а о ejb или pojo в связке с persistence tools - объектах представляющих не только данные, но и методы работы с ними, т.е. реализующих модель предметной области (задачи).
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33986791
а разве в конценции MVC используются ejb?
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33986929
OU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OU
Гость
2 незнайка на жаве:

Концептуально MVC это стиль архитектуры включающий следуюшие концепты:
view - отображение model в определенном виде (как может быть отображена model или какие либо ее аспекты),
controller - функциональность model (что может делать model или какие либо из ее аспектов),
model - абстрактное представление решения какои либо проблемы сушествуюшей в реальном мире.

Чаше всего, model может быть представлена фасадом являюшимся абстракциеи всеи или части domain model.

Практически реализация model зависит от системных требований (это может быть простои bean, может быть какая нибудь сложная структура).

По ходу, в вашем вопросе речь идет о Web MVC (Model 2) а не о MVC в чистом виде.
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33986949
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
незнайка на жаве пишет:
> Автор: незнайка на жаве
> а разве в конценции MVC используются ejb?
> Тема <http://www.sql.ru/forum/actualthread.aspx?tid=338030> Ответить
> <http://www.sql.ru/forum/actualpost.aspx?tid=338030> Сообщение
> <http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=338030&msg=3135470>
>
а что ей машает быть использованной там? jsp - вид, session бин -
контроллер, entity pojo - модель. а сервлеты - для разбора параметров,
проверки валидности и вызова методов session бинов.

можно отказаться от сервлетов, если перейти на jsf + jboss seam
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987121
на самом деле мне интересно для начала разобраться с патерном MVC, а как я уже ранее упоминал с бинами, которые якобы представляют модель и логику. Насчет логики - читал форумы(sql.ru), не помню точно ссылку, но точно помню, как одному из участников сделали замечание: он при реализации MVC запихнул в бин методы, которые оперировали с БД(логику). Вроде даже Вы, Deady, посоветовали эту логику переместить в сервлет, но! Если в MVC сервлет позиционируется как просто диспетчер запросов, зачем же туда запихивать логику(запросы к БД, например)?
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987168
ТимоН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Короче вся прелесть MVC в том что можно безболезнено менять части вашей программы. К примеру: преехали на др. БД или вообще данные из XML получаем меняем модель. Изменился дизайн - представление. Изменилась логика приложения - контроллер.
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987234
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Если в MVC сервлет позиционируется как просто диспетчер запросов, зачем
> же туда запихивать логику(запросы к БД, например)?
где это он так позиционируется?
я бы по функциональности выделил 2 вида сервлетов (что я и делаю в своих
проектах) - это сервлеты для действий и сервлеты для представления.

сервлеты для действий - грубо говоря это то, куда ссылаются формы.
выполнив действие, они передают управление (через
response.sendRedirect()) на сервлет для представления.


сервлет для представления - это сервлет, работающий тесно с jsp. он
собирает информацию, кладет в атрибуты запроса и передает управление на jsp.
в нем вы можете выполнять sql SELECT запросы и пр. (хотя sql лучше
выполнять в session бинах, но они не всегда есть)

а диспетчер запросов - это в первую очередь сам контейнер сервлетов
(например, томкат)
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987485
может я не правильно выразился, в моем понимании (поправьте если я не прав) в MVC основная фунция контролера(сервлета) перенапралять, например с menu.jsp на view_reports.jsp если пользователь на форме menu.jsp кликнул на кнопку "view_reports", т.е. как Вы и писали response.sendRedirect())
Опять таки же как я понял в MVC должен быть один сервлет.

А вот, что касается "сервлет для представления". Если я вас правильно понял - сервлет собирает информацию - т.е. получает ее из собственной формы типа String user = request.getParameter("user"); - хотел бы посмотреть я на листинг вашего сервлета, если надо получить 30-40 параметров, например какая нить регистрационая форма для статистики - вот для этого мне кажеться удобно jsp. Если надо будет переделать дизайн представляю что скажет дизайнер, когда в сервлете увидит хтмлевское описание всех 40 окошек для ввода данных если надо будет переделать дизайн

session бины - давайте проведем дисскусию без ejb?
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987537
ТимоНИМХО лучше паттерны изучать на примерах, чтоб все не так обстрактно было. Гдето в сети была дока "Триада MVC в действии".

золотые слова! был бы Вам признателен если бы прислали мне такой пример, скока в инете искал, толком ниче не нашел
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987574
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
незнайка на жаве пишет:
> Автор: незнайка на жаве
> может я не правильно выразился, в моем понимании (поправьте если я не
> прав) в MVC основная фунция контролера(сервлета) перенапралять, например
> с menu.jsp на view_reports.jsp если пользователь на форме menu.jsp
> кликнул на кнопку "view_reports", т.е. как Вы и писали
> response.sendRedirect())
> Опять таки же как я понял в MVC должен быть один сервлет.
>
> А вот, что касается "сервлет для представления". Если я вас правильно
> понял - сервлет собирает информацию - т.е. получает ее из собственной
> формы типа String user = request.getParameter("user"); - хотел бы
> посмотреть я на листинг вашего сервлета, если надо получить 30-40
> параметров, например какая нить регистрационая форма для статистики -
> вот для этого мне кажеться удобно jsp. Если надо будет переделать дизайн
> представляю что скажет дизайнер, когда в сервлете увидит хтмлевское
> описание всех 40 окошек для ввода данных если надо будет переделать дизайн
>
вы не поняли про сервлет для представления.

смысл такой:
Код: plaintext
1.
2.
3.
4.
5.
6.
 public   void  doGet(...) {
     List foos =  new  IFooManager.findAllFoos();
     request.setAtribute("foos", foos);
     RequestDispatcher disp = req.getRequestDispatcher("/foo.jsp");
     disp.include(req, resp); //или forward
}

это типичное поведение сервлета для представления. он СОБРАЛ данные и
вызвал jsp страницу. на самой странице дизайнер уже сам все красиво
рисует со страшной силой. ВАЖНО: дизайнер понятия не имеет, откуда
пришли эти данные, он просто знает, как их красиво отобразить.

имеет смысл писать такие сервлеты для каждой jsp с динамическим набором
данных.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987654
с сервлетами понятно, давайте вернемся к бинам.. если в бины логику(заросы select к БД, например) зпихивать нежелательно, но можно запихать в сервлеты? Читая предыдущие форумы - смортрю люди пишут, что неплохо засовывать заросы select к БД через jspшные тэги?
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33987671
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Читая предыдущие форумы - смортрю люди пишут, что
> неплохо засовывать заросы select к БД через jspшные тэги?

дело вкуса. мне лично не нравится. я предпочитаю тот вариант, который
привел выше. последнее время я стараюсь в jsp не выполнять вообще
никаких действий, кроме как получение переданных данных из атрибутов
запроса и организации циклов по ним.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33988838
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
незнайка на жавес сервлетами понятно, давайте вернемся к бинам.. если в бины логику(заросы select к БД, например) зпихивать нежелательно, но можно запихать в сервлеты? Читая предыдущие форумы - смортрю люди пишут, что неплохо засовывать заросы select к БД через jspшные тэги?
Мне кажется, что JSP - это вид, а БД - модель. Таким образом, осуществление запросов к БД из JSP самый плохой стиль программирования. Конечно, можно все это спрятать в custom tags, но это уже немного другая песня. Я не прав?
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33989076
Leonidv, Вы правы, мне вот тоже интересно про эту песню поговорить, Вы готовы?
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33989530
fidel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для меня это вообще больная тема, с удовольствием почитаю
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33989557
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LeonidvМне кажется, что JSP - это вид, а БД - модель. Таким образом, осуществление запросов к БД из JSP самый плохой стиль программирования. Конечно, можно все это спрятать в custom tags, но это уже немного другая песня. Я не прав?

1. db - это _не модель_, это хранилище данных.
2. запрос к db из jsp (в любом виде: из скриплета или через специализированные sql-теги), это обращение к _деталям реализации_ бизнес модели приложения.

В JSP есть возможность использовать java код, но это не значит, что этой возможностью надо пользоваться.
JSP это способ представить _данные_ визуально. Не получить, не создать, а именно представить, т.е. в jsp передаются уже готовые данные для отображения.
Этими данными могут быть проинициализированные javabeans. Реже - объекты из бизнес модели.
Использование jsp другим образом приведёт к не поддерживаемому коду.
Соответственно, jsp можно заменить на любой другой template движок: javabeans + veloсity, xml+xsl и т.п., в котором нет возможности делать то, что лучше не делать.
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33989738
new_jabber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я бы тоже глянул на дистинг тэга, который в jsp из БД данные выводит
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33990225
да и мне интересно! Гуру отзовитесь, блескните кодом!
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33991636
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На самом деле это не совсем чистый JSP, это его базове расширение Java Standart Template Library.
http://www.google.ru/search?q=jstl+sql+example
Или вот книга, где это расписано:
http://www.books.ru/shop/search?query=jstl
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33992251
v_777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to Deady
Использую jsp исключительно для представления данных , полученных от сервлета (бина). Дизайнер, работающий с jsp при этом ничего не знает об SQL запросах.
При этом не вижу необходимости в дополнительных сервлетах для представления.
В Вашем примере смысл использования этого сервлета не очевиден и без него все будет работать и дизайнеры не увидят того, что им не нужно.
...
Рейтинг: 0 / 0
вопрос по паттерну MVC
    #33993459
am_sasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NotGonnaGetUs
Использование jsp другим образом приведёт к не поддерживаемому коду.
Соответственно, jsp можно заменить на любой другой template движок: javabeans + veloсity, xml+xsl и т.п., в котором нет возможности делать то, что лучше не делать.
Золотые слова!!!
по мне так jsp лучше не использовать...
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / вопрос по паттерну MVC
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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