![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| ElectricalStorm |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 547 Регистрация: 22.1.2004 Репутация: нет Всего: 9 |
Проясните пожалуйста возникший в голове бардак... 1) Я так понимаю есть у меня JSP это типа Верстка + Java мешанина... которая как-то работает самостоятельно точнее Web Server сам понимает JSP теги и их интерпритирует (кстати а что это за Web Server такой) 2) Есть servlet'ы это Java програмы расположенные на сервере к которым я могу обращатся через Web Server как к cgi скриптам, но там верстки нет тада(!) раз там верстки нет у них (сервлетов) должны быть либо типа SSI что-то либо какой то шаболнизатор тоесть теги более высокого уровня не HTML которые встраиваются в сервлет и потом происходит транформация в HTML и на клиента отдается вот ... если такие шаблонизаторыы есть хотелось бы узнать как они называются ... 3) И наконец каким боком здесь EJB ? Спасибо ! -------------------- Нужно знать инструмент, которым пользуешься |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
1. На самом деле контеuнер компилирует JSP в Servlet и получает обычныu класс
2. Не понял? Сервлет - ето класс, которыж получает реквест и отсылает респонс ТАКИМ КАКИМ ego yвидит броусер клиента. При чем тут шаблонизатор? Сервлет посылает респонс которыж содержит скажем <img src=""> ну а броусер интерпретирует етот теxт. Сервлет абсол-тно не занимается версткоu, шаблонами и пр - ето программа которую пишете Вы. 3. При том что EJB - tozhe часть J2EE, кстати более еффективная технология по части производительноисти и пр. Можно обеспечить коммуникацию JSP/Servlets и EJB; но для обычных wеб-саuтов JSP/Servlets с головоu хватит. Это сообщение отредактировал(а) Domestic Cat - 22.6.2004, 19:43 -------------------- |
|||
|
||||
| ElectricalStorm |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 547 Регистрация: 22.1.2004 Репутация: нет Всего: 9 |
Большое спасибо но все-таки не все ясно...
Значит сервлет получает реквест и отсылает респонс ТАКИМ КАКИМ ego yвидит броусер клиента т.е // Я сервлет импорты . . . реквест = гет реквест; если (реквест.экшн эквивалентно логин) { респонсе = "Введите логин <input type=text name=login><br>"+ "Введите пароль<input type=password name=password>"; } // и терь куда-нибудь типа принт респонсе; вот так ? если так то это таже самая мешанина... кода и верстки тока маленько сдругой стороны.... -------------------- Нужно знать инструмент, которым пользуешься |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
Сервлет конечно можно использовать для формирования реквеста, например
Получается дежствительно мешанина. Поетому я бы советовал прочесть Falkner, Jones. Servlets and JSP the J2EE Web Tier (http://www.jspbook.com/index.jsp ) но поскольку возможно такоu книжки вы не наuдете, то вкраtце суть в следуюшем: 1. JSP используется ТОЛьКО для преzентации и получения/прикрепления обьектов от/к session, page, application, request. Если нужно например сделать что-то еше (то что называетса business logic) na .jsp stranice, используuте tag-фаuлы, классические тег classy, simple-теги. В результате страница не будет також мешаниноu. 2. Сервлеты используюстя ТОЛьКО как фильтры и для business logic. Например, при переходе на страницу "форум" сервлет читает из DB и присоединяет список тем к session , передает реквест .jsp, а .jsp просто получает список и показывает его (желательно через JSTL/tags). В результате не нужно никаких out.println-ov. Например вам надо написать страницу регистрации. Вы даете ссылку не на нее, а на сервлет которыu генерирует, skazhem, анти-бот image, сохраняет его и перенаправляет реквест на обычную форму, которая посылает POST реквест на другоu сервлет. Етот сервлет загоняет все в DB, проверяет что нужно, посылает email, итп и перенаправляет реквест на страницу "успешная регистрация". -------------------- |
|||
|
||||
| DarkDS |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 748 Регистрация: 6.5.2003 Где: Таллинн, Эстония Репутация: 1 Всего: 16 |
Не совсем. JSP - это Java Server Pages. Теговый язык, который компилится на сервере и выдается конечному пользователю в виде ХТМЛ страницы.
Есть 2-а способа использования JSP. 1. Инлайн подстановка кода. То есть весь код написан в перемешку с ХТМЛ кодом. К примеру так:
2. Вариант это теговое использование. То есть вся обработка происходит в написанных программистом Тегах. Класс тега юзера наследуется от класса Тег, описывается параметры тега в спец классе-сателите и вот этот тег, скомпилиный сервером, уже вставляется в код. То есть вставляется что то типа
и при генерации страницы управление будет передаватся из сервера тегу и отображать полученный из тега результат. Дальнейшее поведение не зависит от способа написания. данная страничка генерится в класс JavaPage, унаследованный от сервлета, дается классу реквест, ожидается респонс, и управление передается данному классу. Класс сам пишет в поток респонса то, что ему нужно и все. Это сообщение отредактировал(а) DarkDS - 22.6.2004, 20:41 |
||||
|
|||||
| ElectricalStorm |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 547 Регистрация: 22.1.2004 Репутация: нет Всего: 9 |
Спасибо большое !
-------------------- Нужно знать инструмент, которым пользуешься |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 13 Всего: 172 |
Ну я имел в виду советы Falkner'a, Jones'a а не в целом JSP. Использовать JSP можно как угодно, но для избежания мешанины и nuzhno разделение труда между JSP и Servlets - в J2EE eto nazyvaetsja
MVC pattern. -------------------- |
|||
|
||||
| Катена |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 8.1.2007 Репутация: нет Всего: нет |
Помогите пожалуйста! Не компилируется сервлет(красным помечено ошибки)
[code=java] package bonus.controllers; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class BonusCalculationServlet extends HttpServlet { public void init(ServletConfig config) { System.out.println("BonusCalculationServlet: init()"); } public double calculateBonus(int multiplier, double bonus) { double calculatedBonus = (multiplier * bonus); return calculatedBonus; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String inputMultiplier = request.getParameter("multiplier"); String ssn = request.getParameter("ssn"); Integer multiplierAsInteger = new Integer(inputMultiplier); int multiplier = multiplierAsInteger.intValue(); double inputBonus = 100.00; double bonus = this.calculateBonus(multiplier, inputBonus); response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<HTML><HEAD><TITLE>"); out.println("Servlet Example - Bonus Calculator"); out.println("</TITLE></HEAD><BODY>"); out.println("<H1>Bonus Calculation:</H1>"); out.println("<P>Social Security Number: " + ssn + "<P>"); out.println("<P>Multiplier: " + multiplier + "<P>"); out.println("<P>Bonus Amount: " + bonus + "<P>"); out.println("</BODY></HTML>"); out.close(); } public void destroy() { System.out.println("BonusCalculationServlet: destroy()"); } } Я не все указала. Ошибки выдаются на HttpServlet Это сообщение отредактировал(а) tux - 13.3.2007, 08:19 |
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
Нужна библиотека с J2EE-классами. В Томкате это ${TOMCAT_HOME}/common/lib/servlet-api.jar.
|
|||
|
||||
![]()
|
| Правила форума "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. |