Обзор и использование технологии Struts, Jsp и создание веб-приложений на Java

Обзор технологии Struts и её использование в разработке веб-приложений. Особенности технологии JSP и её возможности в аспекте развития программирования. Характеристика понятия "Веб-приложение", характеристика создания ряда веб-приложений на языке Java.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 11.03.2019
Размер файла 13,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Обзор и использование технологии Struts, Jsp и создание веб-приложений на Java

Введение

struts веб приложение java

Недостатки платформ приложений серверной стороны, такие как низкая функциональность, отсутствие визуальных средств управления, трудности с масштабированием привели к тому, что практически каждая компания создает свой инструментарий для получения более эффективной среды разработки. Также существует достаточное количество свободно распространяемых разработок и опубликованных исследований. Все подобные системы спроектированы для облегчения управления и изменения сайта (или сайтов, в зависимости от архитектуры системы), оперативного внесения изменений в содержание и дизайн, то есть то, чего не хватает базовым технологиям, хотя можно выделить два основных направления развития таких систем: простое построение сайта для непрофессиональных пользователей, и предоставление платформы для построения сложных Web - систем [1].

В связи с развитием Internet из клиент-серверных ИС в последнее время выделяют особый класс информационных систем - Web-базированные ИС. В таких системах используются технологии динамической генерации ответа в виде HTML-страниц на запрос клиента и отправки ему таких страниц с помощью Internet. Такие системы являются наиболее популярными в последнее время из-за своей удобности, надежности и простоты. Web-базированные системы не ограничены масштабами локальной сети предприятия, поэтому они все чаще используются и являются наиболее перспективными. Для построения Web-базированных систем существует много различных технологий, но лидерами среди них, безусловно, являются JSP (Java Server Pages) от Java и ASP (Active Server Pages) от .Net [2].

Цель данной работы - рассмотрение технологий Struts, JSP и их использование в разработке WEB-приложений.

Задачи:

1. Обзор технологии Struts и её использование в разработке вебприложений;

2. Обзор технологии JSP и её использование в разработке вебприложений;

3. Рассмотрения понятия «Веб-приложения» и обзор создания вебприложений на языке Java.

1. Технологии Struts

Framework Struts - это среда Open Source для разработки Webприложений с помощью технологий Java Servlet and Java Server Pages (JSP). Struts способствует разработке приложений с архитектурой, базирующейся на парадигме Model-View-Controller, известной как Model 2. Cледующие составные части фреймворка и их функции определены в Struts :

1. Сервлет-контролер (controller servlet) координирует запросы к соответствующим классам-действиям (action), созданным разработчиками приложения.

2. Библиотеки JSP тэгов поддерживаются сервлетом-контроллером, что помогает разработчикам в создании интерактивных Web-приложений, основанных на шаблонах.

3. Вспомогательные классы для поддержки разбора (parsing) XML, автоматического управления свойствами JavaBeans класса-действия, и интернационализации сообщений и запросов [3].

Struts был создан для того, чтобы чётко разделить модель (бизнеслогику), представление (HTML-страницы) и контроллер(отвечающий за передачу данных от модели к представлению и обратно). Struts предоставляет стандартный контроллер -- сервлет под именем ActionServlet и различные средства для создания страниц представления. Разработчик веб-приложения отвечает за написание кода модели и создание конфигурационного файла strutsconfig.xml, который связывает воедино модель, представление и контроллер.

Запросы от клиента передаются контроллеру в виде «Actions» (действий), определённых в конфигурационном файле. Когда контроллер получает такой запрос, он передаёт его соответствующему Action классу. Последний взаимодействует с кодом Модели и возвращает контроллеру «ActionForward», строку, определяющую страницу для отправления клиенту. Информация передаётся между моделью и представлением в виде особых JavaBeans. Богатая библиотека тегов позволяет получать данные из бинов и записывать их без Java-кода.

Struts также поддерживает i18n (интернационализацию), облегчает валидацию данных полученных из веб-формы и предоставляет механизм создания шаблонов под названием «Tiles», который, кроме всего прочего, позволяет наследовать веб-страницы [4].

2.Технологии JSP

JavaServer Page (JSP) - это расширение технологии Java servlet, являющееся удобным методом для отображения веб-страниц с динамическим содержанием. Технология позволяет внедрять Java-код, а также EL (Expression Language) в статичное содержимое страницы. Могут использоваться библиотеки JSP-тегов для внедрения их в JSP-страницы. Страницы компилируются JSP-компилятором в сервлеты, представляющие собой Javaклассы, которые выполняются на сервере. Сервлеты могут быть написаны разработчиком, не используя JSP-страницы. Эти технологии дополняют друг друга.

Основным отличием от других подобных технологий, например ASP и PHP, является то, что код, находящийся внутри специальных тэгов не интерпретируется при обращении к странице, а предварительно компилируется в Java Servlet. Технология JSP удачно объединяет шаблонный подход к построению сайтов и все преимущества Java-платформы.

Важным шагом к расширению шаблонного подхода стали библиотеки тэгов. Они предоставляют хорошую возможность интегрировать стандартные, сторонние, или собственные программные компоненты в страницы. Простота создания и использования привели к большой популярности библиотек тэгов.

JSP не привязана к конкретной платформе благодаря использованию Java. Кроссплатформенность является одним из основных преимуществ этой технологии. Также к достоинствам JSP следует отнести простоту разработки, наличие большого количества библиотек и легкость их использования, мощные и разнообразные среды разработки.

Пример программного кода на JSP, который выбирает из базы данных информацию о торговых марках:

<%

List<Object> list = (new TradeMarkService()). getAllFromBase();

int i = 0;

for (i=0; i<list.size(); i++){

TradeMark tradeMark = (TradeMark)list.get(i);

%>

<tr>

<td><%= i+1 %></td>

<td><a class="link" href="edit_tm.jsp?id=<%= tradeMark.getId() %>"><%= tradeMark.getName() %></a></td>

</tr>

<% } %>

Этот пример демонстрирует комбинацию Java-кода и статического HTML на JSP-странице.

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

Сервлет, полученный после преобразования JSP-страницы, функционирует в рамках стандартного контейнера сервлетов и использует строго регламентированный интерфейс. Поэтому эта технология не зависит от каких-либо особенностей той или иной аппаратной платформы. С другой стороны, поскольку JSP-технология строится на базе интерпретируемого объектно-ориентированного языка Java, то это дает гарантию переноса приложений, построенных на технологии JSP, на любую платформу, где можно установить виртуальную Java машину [2].

3.WEB-приложения

Веб-приложение -- клиент-серверное приложение, в котором клиентом выступает браузер, а сервером -- веб-сервер. Логика веб-приложения распределена между сервером и клиентом, хранение данных осуществляется, преимущественно, на сервере, обмен информацией происходит по сети. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому веб-приложения являются кроссплатформенными сервисами. Веб-приложения стали широко популярными в конце 1990-х -- начале 2000-х годов.

Существенное преимущество построения веб-приложений для поддержки стандартных функций браузера заключается в том, что функции должны выполняться независимо от операционной системы данного клиента. Вместо того, чтобы писать различные версии для Microsoft Windows, Mac OS X, GNU/Linux и других операционных систем, приложение создаётся один раз для произвольно выбранной платформы и на ней разворачивается. Однако различная реализация HTML, CSS, DOM и других спецификаций в браузерах может вызвать проблемы при разработке веб-приложений и последующей поддержке. Кроме того, возможность пользователя настраивать многие параметры браузера (например, размер шрифта, цвета, отключение поддержки сценариев) может препятствовать корректной работе приложения.

Другой (менее универсальный) подход заключается в использовании Adobe Flash, Silverlight или Java-апплетов для полной или частичной реализации пользовательского интерфейса. Поскольку большинство браузеров поддерживает эти технологии (как правило, с помощью плагинов), Flash- или Java-приложения могут выполняться с легкостью. Так как они предоставляют программисту больший контроль над интерфейсом, они способны обходить многие несовместимости в конфигурациях браузеров, хотя несовместимость между Java- или Flash-реализациями на стороне клиента может приводить к различным осложнениям [6].

Формально каждое web-приложение можно разбить на 3 взаимно независимые части:

1. Модуль, который исполняется WEB-браузером. Это приложение может быть написано на любом языке, который поддерживает браузер. Чаще всего используется язык JavaScript, как наиболее поддерживаемый и имеющий большую библиотечную поддержку. Это очень важно, так как позволяет существенно экономить бюджеты проектов.

2. Модуль, исполняемый на серверной стороне под управлением webсервера. Это приложение может быть написано на любом языке, интерпретацию которого поддерживает выбранный Вами web-сервер.

Последнее время, часто, в качестве языка программирования выбирается язык Java. Этот язык также имеет серьезную библиотечную поддержку.

3. База данных. В этой области так же существует достаточно широкий выбор. Есть промышленные базы данных, такие как Oracle, DB2, PostgreSQL. Есть легкие базы данных, такие как MySQL. База данных выбирается основываясь на целях и области решаемых задач [7].

Веб-приложение состоит из клиентской и серверной частей, тем самым реализуя технологию «клиент-сервер».

Клиентская часть реализует пользовательский интерфейс, формирует запросы к серверу и обрабатывает ответы от него.

Серверная часть получает запрос от клиента, выполняет вычисления, после этого формирует веб-страницу и отправляет её клиенту по сети с использованием протокола HTTP.

Само веб-приложение может выступать в качестве клиента других служб, например, базы данных или другого веб-приложения, расположенного на другом сервере. Ярким примером веб-приложения является система управления содержимым статей Википедии: множество её участников могут принимать участие в создании сетевой энциклопедии, используя для этого браузеры своих операционных систем (будь то Microsoft Windows, GNU/Linux или любая другая операционная система) и не загружая дополнительных исполняемых модулей для работы с базой данных статей.

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

Также в последнее время набирает большую популярность технология WebSocket, которая не требует постоянных запросов от клиента к серверу, а создает двунаправленное соединение, при котором сервер может отправлять данные клиенту без запроса от последнего. Таким образом появляется возможность динамически управлять контентом в режиме реального времени.

Для создания веб-приложений на стороне сервера используются разнообразные технологии и любые языки программирования, способные осуществлять вывод в стандартную консоль [6].

Заключение

Основной особенностью Web-службы является способность участников взаимодействовать друг с другом даже при использовании ими различных информационных систем. XML обеспечивает легкую переносимость данных, что является ключевой технологией, предназначенной для обеспечения такой способности. Также Web-службы зависят от способности предприятий использовать различные вычислительные платформы для взаимодействия друг с другом. Это требование делает платформу Java™, программы в которой являются переносимыми, естественным выбором для разработки Web-служб [5].

Список использованных источников

1. Библиофонд: электронная библиотека студента [Электронный ресурс] URL: http://bibliofond.ru/view.aspx?id=67005

2. X-referat [Электронный ресурс] URL: http://xreferat.com/33/2974-1vybor-i-ispol-zovanie-programmnyh-tehnologiiy-jsp-i-asp-net-pri-razrabotke-webbazirovannyh-informacionnyh-sistem.html

3. Всё о Java и SQL [Электронный ресурс] URL: http://java-online.ru/struts2.xhtml

4. Википедия - свободная энциклопедия :Apache Struts [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Apache_Struts

5. Allbest [Электронный ресурс] URL: http://knowledge.allbest.ru/programming/2c0a65625b3ad68b4d53a89521206d27_0.h tml

6. Википедия - свободная энциклопедия :Веб-приложение [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/Веб-приложение

7. Хабрахабр [Электронный ресурс] URL: https://habrahabr.ru/post/249863/

Размещено на Allbest.ru

...

Подобные документы

  • Разработка технологии и средств реализации Java-приложения, сокращающих трудоемкость создания и гибкость модификации интерфейса пользователя. Использование XML-документов для описания внешнего представления, элементов управления и событий экранных форм.

    дипломная работа [2,8 M], добавлен 19.08.2011

  • Разработка графического редактора для рисования двухмерной и трехмерной графики, используя язык программирования Java и интерфейсы прикладного программирования Java 2D и Java 3D. Создание графического редактора 3D Paint. Основные методы класса Graphics.

    курсовая работа [197,5 K], добавлен 19.11.2009

  • Преимущество использования программ, написанных на Java, требования к ним и настройки на клиентском ПК. Развертывание и последующее "автоматическое" обновление версий GUI клиента с помощью использования технологии Java Web Start в среде Windows.

    реферат [33,2 K], добавлен 16.05.2011

  • Кратка историческая справка развития языка Java. Анализ предметной области. Java platform, enterprise and standart edition. Апплеты, сервлеты, gui-приложения. Розработка программного кода, консольное приложение. Результаты работы апплета, сервлета.

    курсовая работа [549,2 K], добавлен 23.12.2015

  • Принцип работы и назначение сервлетов Java, их значение в повышении функциональности Web-серверов и улучшении их программирования, преимущества и недостатки использования. Способы вызова сервлетов с браузера и страницы. Запись и чтение атрибутов сессии.

    лабораторная работа [80,2 K], добавлен 30.06.2009

  • Описание технологии ASP.NET исполняемой на платформе Net FrameWork, ее преимущества. Возможности применения коллекции ViewState. Примеры использования шаблонов. Основные контролы Web приложений. Разработка программы-словаря с использованием ASP.NET.

    курсовая работа [1,2 M], добавлен 13.09.2012

  • Сетевые возможности языков программирования. Преимущества использования Java-апплетов. Классы, входящие в состав библиотеки java.awt. Создание пользовательского интерфейса. Сокетное соединение с сервером. Графика в Java. Значения составляющих цвета.

    курсовая работа [508,1 K], добавлен 10.11.2014

  • Возможности создания MDI-приложений, их преимущества. Основные приемы работы с записью информации в файл, экспорт данных в приложения Microsoft Office с помощью использование технологии OLE, на примере MS Excel интегрированного пакета MS Office.

    лабораторная работа [1,2 M], добавлен 05.10.2010

  • Основы создания мидлетов (midlet) - MIDP приложений для мобильных устройств на языке Java. Особенности устройств, для которых мидлеты предназначены. Библиотеки javax.microedition. Практические примеры создания MIDP приложений для телефона и их запуск.

    методичка [25,9 K], добавлен 30.06.2009

  • Устройство веб-приложений, преимущества их построения. Характеристика технологий веб-программирования, используемых на стороне сервера и на стороне клиента. Формирование и обработка запросов, создание интерактивного и независимого от браузера интерфейса.

    контрольная работа [76,4 K], добавлен 08.07.2014

  • Основные понятия и назначение технологии JavaBeans, ее компоненты и принцип работы, преимущества. Методика создания jar файлов в среде Eclipse. Структура файлов манифеста. Создание многопоточных приложений. Изучение визуального редактора Java BeanBox.

    лабораторная работа [67,4 K], добавлен 30.06.2009

  • Особенности архитектуры Java. Технология Java Database Connectivity. Кроссплатформенность Java-приложений. Преимущества языка программирования. Логическая структура базы данных. Структура программного комплекса. Верификация программных средств.

    курсовая работа [962,8 K], добавлен 13.01.2016

  • Основные приемы работы в среде программирования Delphi. Особенности технологии создания простейших приложений. Работа с компонентами среды разработки приложений. Ввод, редактирование, выбор и вывод информации. Аспекты использования структуры ветвления.

    методичка [619,9 K], добавлен 17.11.2011

  • Облачные технологии в бизнес-процессах. Модели использования бизнес-приложений в качестве интернет-сервисов. Практика применения облачных технологий. Приложения, созданные на основе Windows Azure. Создание систем и офисных приложений по запросу.

    реферат [25,3 K], добавлен 16.06.2013

  • Java Runtime Environment - минимальная реализация виртуальной машины, необходимая для исполнения приложений, без компилятора и других средств разработки. Компиляция исходного кода через командную строку. Основные моменты создания игрового 2d-приложения.

    курсовая работа [2,1 M], добавлен 26.04.2014

  • Структура и устройство метода AJAX, а также история его возникновения и развития. Инструментарий разработки AJAX-приложений. Безопасность AJAX-приложений и способы их решения. Разработка дизайна оформления клиентской и администраторской частей портала.

    дипломная работа [2,9 M], добавлен 22.07.2011

  • Разработка и использование классов при создании приложений. Использование odbc-технологии для создания внешних представлений. Определение источника данных. Создание удаленного и независимого внешнего представления данных. Управление объектами Excel.

    лабораторная работа [413,9 K], добавлен 14.05.2011

  • Архитектура операционной системы Android, набор библиотек для обеспечения базового функционала приложений и виртуальная машина Dalvik. Объектно-ориентированный язык программирования Java как инструмент разработки мобильных приложений для ОС Android.

    дипломная работа [1,6 M], добавлен 08.07.2015

  • Характеристика модели клиент-сервер как технологии взаимодействия в информационной сети. Разработка и описание алгоритмов работы приложений на платформе Win32 в среде Microsoft Visual Studio, использующих для межпроцессного взаимодействия сокеты.

    курсовая работа [544,6 K], добавлен 02.06.2014

  • Первое устройство, работающее под управлением Android. Приложения под операционную систему Android. Формат установочных пакетов. Разработка приложений на языке Java. Шаблоны основных пакетов и компонентов Android. Сборка приложений, основанная на Gradle.

    курсовая работа [492,0 K], добавлен 08.02.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.