Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Технология JSP – Java Server Pages




Одним из важнейших видов серверных программ являются приложения, использующие технологию JSP – Java Server Pages. Несмотря на то, что она опирается использование сервлетов, JSP является самостоятельной технологией. Идеология JSP основана на внедрение в HTML-документы специальных конструкций, позволяющих со стороны сервера выполнять программную обработку данных и выводить в соответствующее место документа результат.

В качестве примеров в NetBeans Enterprise Pack приведены примеры Tomcat JSP Example и JSTL Example. Отметим, что Tomcat – название программного сервера, варианта сервера apache, который автоматически конфигурируется и запускается при выполнении примеров, а example означает “пример”. Большим достоинством среды NetBeans является то, что оригиналы всех примеров, открываемых в NetBeans, остаются в неприкосновенности – автоматически создаются копии примеров. Поэтому даже если вы внесёте исправления в исходный код проекта с примером, это не повлечёт изменений в новом проекте с таким же примером.

Для правильной работы серверных примеров требуется, чтобы на компьютере была установлена работа с Интернет. Реально выходить в Интернет не надо, идёт соединение http://localhost:8084//. Но после запуска другого серверного приложения идёт соединение по тому же адресу, поэтому документ берётся из буфера – и показывается документ, созданный предыдущим приложением. Для показа правильного документа требуется нажать в браузере кнопку “обновить”, и в случае автономной работы в появившемся диалоге, предлагающем выбрать режим работы, выбрать “Подключиться”. Реального соединения с Интернет для адреса http://localhost:8084// не будет – все коммуникации станут проходить локально.

 

Первый из примеров иллюстрирует базовые конструкции JSP, его можно просмотреть, создав проект File/New Project…/ Samples/J2EE1.4/Web /Tomcat JSP Example.

Второй пример – надстройка над JSP, специальный набор тегов JSP, разработанный группой экспертов для облегчения разработки серверных приложений. Пример можно просмотреть, создав проект File/New Project…/ Samples/J2EE1.4/Web / JSTL Example.

Оба этих примера также разработаны организацией The Apache Software Foundation (http://www.apache.org/), и их использование также должно соответствовать лицензии http://www.apache.org/licenses/LICENSE-2.0.

Порядок примеров в мастере создания приложений прямо противоположный рассматриваемому нами - сначала предлагается использовать JSTL как наиболее развитое средство, затем – JSP как средство более низкого уровня, и только затем Servlet – как средство ещё более низкого уровня. Мы используем при рассмотрении обратный порядок, так как JSP использует сервлеты, а JSTL является надстройкой над JSP.

Рассмотрим подробнее первый пример.

 

Первая страница запущенного примера JSP

 

Как и в предыдущем случае, при нажатии на гиперссылку “Execute” выполняется соответствующий пример – в данном случае запускается страница JSP. А при нажатии гиперссылки Source показывается HTML-страница с примерным видом исходного кода.

Страницы JSP представляют обычные HTML-документы, но имеющие расширение имени файла.jsp, а не.html или.htm. Это – заготовка HTML-документа, который будет показан пользователю-клиенту. При создании клиентского HTML-документа в этой заготовке выражения в фигурных скобках после знака доллара вычисляются, а в HTML-документ подставляется строковое представление результата.

Например, выражение вида ${1 + 2} выдаст в соответствующее место документа символ 3. Последовательность \$ означает, что выражение ${…} не вычисляется, а рассматривается как строка.

Первый пример JSP- вычисление выражений

 

Имеется ряд встроенных в JSP тегов (объектов Java):

  • request – запрос. Тип объекта - класс, реализующий интерфейс javax.servlet.http.HttpServletRequest.
  • response – ответ на запрос. Тип объекта - класс, реализующий интерфейс javax.servlet.http.HttpServletResponce.
  • pageContext – контекст страницы JSP. Обеспечивает доступ к пространству имён и элементам страницы (тегам, атрибутам). Тип объекта - класс javax.servlet.jsp.PageContext.
  • session – сессия (сеанс связи клиента с сервером). Тип объекта - класс, реализующий интерфейс javax.servlet.http.HttpSession
  • application – приложение. Тип объекта - класс, реализующий интерфейс javax.servlet.ServletContext
  • out – выходной поток. Тип объекта - класс javax.servlet.jsp.JspWriter
  • config – объект конфигурации сервлета для текущей страницы. Тип объекта - класс, реализующий интерфейс javax.servlet.ServletConfig
  • page – объект, обрабатывающий запрос для данной страницы. Тип объекта - класс Object.

 

Данные объекты применяются в виде

<%@ имяОбъекта параметр1=значение1 параметр2=значение2... %>

 

Пример их использования:

<%@ page session=true import=”java.util.*” %>

 

Имеется возможность задания сценариев (интерпретируемого кода) с помощью специальных определений вида

<%@ код %>

Где код – сценарий Java для работы с документом или вычислений. Например,

<%

for(int i=0; i<table.getEntries().getRows(); i++) {

cal.Entry entr = table.getEntries().getEntry(i);

%>

 

 

В частности, разрешается задавать собственные теги вида

<%@ имяБиблиотеки prefix=" имяОбъекта " uri=" путь к библиотеке " %>

После чего разрешается использовать теги вида < имяОбъекта: оператор >

 

Так делается в примере использования оператора out в JSTL Example. Используется пользовательский объект c (сокращение от customer – “покупатель”), задаваемый как prefix="c", и оператор out, заданный в библиотеке taglib по адресу uri="http://java.sun.com/jsp/jstl/core":

 

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

 

Отметим, что соответствующие библиотеки уже добавлены в проект. Для примера out это пакет org.apache.taglibs.standard.tag.el.core.

После запуска данного приложения в появившемся документе в списке Examples это первый пример - General Purpose Tags. При переходе по данной гиперссылке мы получаем пример

 





Поделиться с друзьями:


Дата добавления: 2017-02-28; Мы поможем в написании ваших работ!; просмотров: 627 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Сложнее всего начать действовать, все остальное зависит только от упорства. © Амелия Эрхарт
==> читать все изречения...

2239 - | 2108 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.