Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
полный ответ по веб сервис.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
324 Кб
Скачать
☆

20. Создание jsp страниц в Java

Данная статья была написана с целью демонстрации создания JSP страниц вобъектно-ориентированном языке Java. В программе продемонстрировано как средствами языка Java можно разрабатывать JSP страницы и создавать динамические сайты с помощью возможностей пакетов J2EE.

Постановка задачи

Целью данной работы является демонстрация всех возможностей языкаJava при разработке JSP страниц, рассмотрены оновные возможности пакетов J2EE для создания динамических Web-сайтов. Для того, что бы не возниколо трудностей, при рассмотрении данным вопросов на конкретном примере, определим некоторые теоритические аспекты данной темы.

Немного теории

Технология Java Server Pages (JSP) является составной частью единой технологии создания бизнес-приложений J2EE. JSP - это альтернативная методика разработки приложений, динамически генерирующих ответ на те или иные запросы клиента. Прежде чем JSP документ будет использован, специальная процедура преобразует его в соответствующий сервлет. В свою очередь, сервлет реализует определенный интерфейс. Далее, сервлет также не является самостоятельным приложением и функционирует, только будучи помещен в соответствующий web-контейнер. Web-контейнеробеспечивает обмен данными между сервлетом и клиентами, берет на себя выполнение таких функций, как создание программной среды для функционирующего сервлета, идентификацию и авторизацию клиентов, организацию сессии для каждого из них.

JSP позволяет вам комбинировать HTML Web страницы с кусочками кодаJava в одном документе. Java код обрамляется специальными тегами, которые говорят JSP контейнеру, что он должен использовать код для генерации единого документа или его части. Выгода JSP состоит втом, что вы можете содержать единый документ, которые представляет и страницу, иJava код, который в нее включен. Недостаток состоит в том, что тот, кто поддерживает работоспособность JSP страницы, должен иметь опыт иHTML, и в Java.

Особенности реализации сервлетов на Java

Структура JSP страницы - это что-то среднее между сервлетом и HTMLстраницей. JSP тэги начинаются и заканчиваются угловой скобкой, также как и HTML коды, но теги также включают знаки процента, так что все JSP теги обозначаются так:  <% JSP code here %>

Поскольку web контейнер, прежде чем использовать JSP страницу, предоставленную разработчиками бизнес-приложения, транслирует ее в соответствующий сервлет, имеет смысл предоставить возможность оставлять на JSP странице директивы, которые будут управлять процессом трансляции. Директивы имеют синтаксис <%@ директива... %>. Рассмотрим некоторые из таких директив:

Скриплеты. Скриплет может содержать программный код и декларации локальных переменных, которые будут использованы для обработки запросов клиентов. Фактически, скриплет - это фрагмент программного кода из будущего сервлета, который в свое время будет помещен в метод _jspService(). Скриплет имеет синтаксис <% ... %>.

Декларации. Декларация на JSP странице чаще всего используется для того, чтобы объявить дополнительные атрибуты и методы в классе сервлета, которые будут доступны при обработке любого запроса клиента. Декларации имеют синтаксис <%! ... %>.

Выражения. Часто страница, передаваемая клиенту, содержит результаты вычислений или обращений к тем или иным методам и атрибутам определенных классов. Любой из таких динамических элементов можно преобразовать в строку и представить на JSP странице с помощью выражений. Выражения имеют синтаксис <%= ... %>.

В ходе обработки запросов, JSP страница может получать доступ к объектам, расположенным на сервере, создавать их и модифицировать.Доступ к объектам осуществляется через элементы скриптов и action. Каждый создаваемый в приложении объект имеет определенное время существования, которое декларируется в соответствующем атрибуте. Спецификацией предусматривается четыре интервала:

page - объект, чье время существования определяется как page, доступен в пределах только той JSP страницы, где он был создан. Все ссылки на этот объект должны быть освобождены сразу же после того, как запрос клиента был обработан.

request - объект, чье время существования определяется как request, доступен для всех страниц, связанных с обработкой данного запроса. В частности, если имеет место переадресация обработки на новую JSP страницу, данный объект будет доступен и на прежней, и на новой странице. Как и в предыдущем случае, ссылки на объект после обработки запроса должны быть освобождены.

session - объект с областью видимости session доступен для всех страниц, обрабатывающих запросы, связанные с определенной сессией(сеансом связи с конкретным клиентом). Ссылки на объекты, связанные ссессией, помещаются в объект session. По окончании сеанса связи ссылки должны быть освобождены.

application - наиболее общая область видимости. Объекты, имеющие область существования application, не привязаны к какой-либо отдельной странице или сеансу связи и доступны со всех JSP страницданного приложения.