![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
Итак, допустим, есть веб приложение (сайт) доступ на который возможен только для зарегистрированных пользователей. Сайт предоставляет для просмотра какой то набор данных плюс позволяет редактировать (удалять, добавлять) новые данные. допустим всё это будет на jsp страничках с использованием jstl. получается 4 - 5 страничек (не так уж много для начала).
но вопрос как это всё лучше всего организовать (какой шаблон использовать) ?? прочитал про шаблон FrontController, вроде подходит, но есть ли какой то другой более оптимальный вариант для моего случая? буду благодарен за любую полезную информацию. про фреймворки не писать/я их использовать не буду! j2ee core + patterns only! |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
В первую очередь - MVC.
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
SuperFly |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 98 Регистрация: 19.11.2007 Репутация: нет Всего: нет |
Хех, в полку прибыло ^_^ а я уж думал это антинаучно. Слава богу Stampede человек авторитетный, в своем туториале обходился без всякого рода клея, может вам его почитать? На самом деле там использовались JPA в качестве Model, Velocity в качестве View, а в качестве Controller свой FrontController и обработчики сценариев Worker'ы, всё. |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
хотелось бы обойтись и без сторонних библиотек.
поповоду темы stampede: там так много .... уже несколько раз начинал читать, доходил максимум до второго релиза )... как мне связать jsp - view и данные. вариант проверки и записиывание в аттрибуты сессии нужных данных в контроллере, а затем на страничке просто считывание нужных аттрибутов? |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
В страничке можно использовать бины. Например, бин - список людей (MembersList). Ну а в выводе, соответственно, итерировать по этому списку и выводить данные о пользователях.
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
ну собственно я про это и спрашиваю.
как мне передать бины на страничк? из странички вызывать контроллер, который получает memberList !? или в контролере создавать атрибут memberList и далее вызывать нужную страничку, которая работает с атрибутами!? вопрос поставлю по другому какую книгу почитать по сабжу.(так что бы её можно было найти напр. тут pdfchm.com) |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
Смотря на какую страничку. У JSP это директива useBean, у JSF - не знаю. Можно почитать туториал по J2EE, но эта книга не очень-то заморачивается вопросом написания "правильных" веб-приложений. Это сообщение отредактировал(а) batigoal - 17.1.2008, 16:26 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
ок. с этим вроде разобрался.
теперь вопрос следующий. производительность. допустим наше приложение ещё обращается в бд .. оттуда достаёт кучу контента и выводит его пользователям/пользователей допустим достаточно много..( что то типо новостного сайта или форума с большими постами ), т.е. каждому пользователю формируется (почти) одинаковые данные. что необходимо учитывать , что-бы максимально выиграть в производительности? (опять таки интересуют вопросы правильного построения без использования фреймворков) Это сообщение отредактировал(а) v2v - 17.1.2008, 23:41 |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
От скриптлетов действительно нужно избавиться. Это всё можно сделать тегами.
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
||||
|
||||
olegrolik |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 309 Регистрация: 25.1.2006 Репутация: нет Всего: нет |
Присоединяюсь. Сам хотел создать подобный топик. Тоже хочу сделать движок для сайта. Читал тему "JSP - с чего начать". Не нравится JPA и Hibernate, Velocity устраивает. Может у кого-то есть пример небольшого сайта, написанного на Java, где обязательно есть авторизация, реализованная через форму? |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
это действительно не сложно делается, сдам последний экзамен на сесии и постараюсь такй примерчик сделать с описанием. вопрос про производительность в силе! Это сообщение отредактировал(а) v2v - 17.1.2008, 23:55 |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
Почему? По-моему, это одна из лучших вещей, появившаяся в программировании за последние годы. Кеширование, в первую очередь. Не нужно на каждых чих лазить в базу, если данная статья с высокой степенью вероятности понадобится почти каждому пользователю. То же относится и к разного рода служебной информации, которая по-любому будет нужна (например, счетчик статей на ресурсе, облако тегов или еще что-нибудь). Еще стоит посмотреть на пулы соединений - может, пригодится. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
я не большой знаток кеширования, поэтому непонятно как оно будет выыглядеть? создаются дополнительные таблици в базе данных и туда складываются готовые странички? ... хм... за счёт потери в памяти, можно немного преуспеть в производительности .... но не сильно... если например учитывать что контент будет хранится в бд уже в форматированном виде ( со всеми тегами ).
есть какие то механизмы кеширования. подскажите куда смотреть? |
|||
|
||||
Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
А скажи, для чего тебе выигрывать в производительности? Сгенерировать новостную страничку разумного размера при более-менее грамотной организации приложения и базы данных, да на нормальном железе - вопрос 50-200 мс. Можно, конечно, попытаться соптимизировать какие-то моменты и уложиться, скажем, в 20 мс, но возникает вопрос - зачем? На фоне неизбежной сетевой задержки выигрыш в несколько десятков миллисекунд практически не виден. Так стоит ли городить огород? Вариант с кэшированием готовых страниц я бы вообще не рассматривал, поскольку это сразу ограничивает тебя в динамических возможнотях. Например, ты уже не сможешь показывать посетителям персонализированный контент, а это для развития сайта далеко не последняя вещь. Если хочешь примеров - могу привести. В общем, предлагаю подумать, нужно ли тебе это выжимание производительности и какую цену (в том числе в терминах пожервованной функциональности) ты готов за это заплатить. -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |