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

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

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

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

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

По ходу, в вашем вопросе речь идет о Web MVC (Model 2) а не о MVC в чистом виде.
...
Рейтинг: 0 / 0
14.09.2006, 13:26:38
    #33986949
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
незнайка на жаве пишет:
> Автор: незнайка на жаве
> а разве в конценции 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
14.09.2006, 13:55:05
    #33987121
вопрос по паттерну MVC
на самом деле мне интересно для начала разобраться с патерном MVC, а как я уже ранее упоминал с бинами, которые якобы представляют модель и логику. Насчет логики - читал форумы(sql.ru), не помню точно ссылку, но точно помню, как одному из участников сделали замечание: он при реализации MVC запихнул в бин методы, которые оперировали с БД(логику). Вроде даже Вы, Deady, посоветовали эту логику переместить в сервлет, но! Если в MVC сервлет позиционируется как просто диспетчер запросов, зачем же туда запихивать логику(запросы к БД, например)?
...
Рейтинг: 0 / 0
14.09.2006, 14:02:59
    #33987168
ТимоН
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
Короче вся прелесть MVC в том что можно безболезнено менять части вашей программы. К примеру: преехали на др. БД или вообще данные из XML получаем меняем модель. Изменился дизайн - представление. Изменилась логика приложения - контроллер.
...
Рейтинг: 0 / 0
14.09.2006, 14:12:03
    #33987234
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
> Если в MVC сервлет позиционируется как просто диспетчер запросов, зачем
> же туда запихивать логику(запросы к БД, например)?
где это он так позиционируется?
я бы по функциональности выделил 2 вида сервлетов (что я и делаю в своих
проектах) - это сервлеты для действий и сервлеты для представления.

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


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

а диспетчер запросов - это в первую очередь сам контейнер сервлетов
(например, томкат)
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
14.09.2006, 14:56:04
    #33987485
вопрос по паттерну MVC
может я не правильно выразился, в моем понимании (поправьте если я не прав) в 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
14.09.2006, 15:05:15
    #33987537
вопрос по паттерну MVC
ТимоНИМХО лучше паттерны изучать на примерах, чтоб все не так обстрактно было. Гдето в сети была дока "Триада MVC в действии".

золотые слова! был бы Вам признателен если бы прислали мне такой пример, скока в инете искал, толком ниче не нашел
...
Рейтинг: 0 / 0
14.09.2006, 15:11:57
    #33987574
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
незнайка на жаве пишет:
> Автор: незнайка на жаве
> может я не правильно выразился, в моем понимании (поправьте если я не
> прав) в 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
14.09.2006, 15:30:22
    #33987654
вопрос по паттерну MVC
с сервлетами понятно, давайте вернемся к бинам.. если в бины логику(заросы select к БД, например) зпихивать нежелательно, но можно запихать в сервлеты? Читая предыдущие форумы - смортрю люди пишут, что неплохо засовывать заросы select к БД через jspшные тэги?
...
Рейтинг: 0 / 0
14.09.2006, 15:33:02
    #33987671
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
> Читая предыдущие форумы - смортрю люди пишут, что
> неплохо засовывать заросы select к БД через jspшные тэги?

дело вкуса. мне лично не нравится. я предпочитаю тот вариант, который
привел выше. последнее время я стараюсь в jsp не выполнять вообще
никаких действий, кроме как получение переданных данных из атрибутов
запроса и организации циклов по ним.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
14.09.2006, 22:20:08
    #33988838
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
незнайка на жавес сервлетами понятно, давайте вернемся к бинам.. если в бины логику(заросы select к БД, например) зпихивать нежелательно, но можно запихать в сервлеты? Читая предыдущие форумы - смортрю люди пишут, что неплохо засовывать заросы select к БД через jspшные тэги?
Мне кажется, что JSP - это вид, а БД - модель. Таким образом, осуществление запросов к БД из JSP самый плохой стиль программирования. Конечно, можно все это спрятать в custom tags, но это уже немного другая песня. Я не прав?
...
Рейтинг: 0 / 0
15.09.2006, 08:50:07
    #33989076
вопрос по паттерну MVC
Leonidv, Вы правы, мне вот тоже интересно про эту песню поговорить, Вы готовы?
...
Рейтинг: 0 / 0
15.09.2006, 11:26:01
    #33989530
fidel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
для меня это вообще больная тема, с удовольствием почитаю
...
Рейтинг: 0 / 0
15.09.2006, 11:32:10
    #33989557
NotGonnaGetUs
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
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
15.09.2006, 12:06:20
    #33989738
new_jabber
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
я бы тоже глянул на дистинг тэга, который в jsp из БД данные выводит
...
Рейтинг: 0 / 0
15.09.2006, 13:48:23
    #33990225
вопрос по паттерну MVC
да и мне интересно! Гуру отзовитесь, блескните кодом!
...
Рейтинг: 0 / 0
16.09.2006, 00:10:22
    #33991636
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
На самом деле это не совсем чистый JSP, это его базове расширение Java Standart Template Library.
http://www.google.ru/search?q=jstl+sql+example
Или вот книга, где это расписано:
http://www.books.ru/shop/search?query=jstl
...
Рейтинг: 0 / 0
17.09.2006, 04:50:13
    #33992251
v_777
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
to Deady
Использую jsp исключительно для представления данных , полученных от сервлета (бина). Дизайнер, работающий с jsp при этом ничего не знает об SQL запросах.
При этом не вижу необходимости в дополнительных сервлетах для представления.
В Вашем примере смысл использования этого сервлета не очевиден и без него все будет работать и дизайнеры не увидят того, что им не нужно.
...
Рейтинг: 0 / 0
18.09.2006, 12:01:52
    #33993459
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по паттерну MVC
NotGonnaGetUs
Использование jsp другим образом приведёт к не поддерживаемому коду.
Соответственно, jsp можно заменить на любой другой template движок: javabeans + veloсity, xml+xsl и т.п., в котором нет возможности делать то, что лучше не делать.
Золотые слова!!!
по мне так jsp лучше не использовать...
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / вопрос по паттерну MVC / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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