Справочник по Java-сервлет для начинающих
Опубликованно 28.12.2018 00:05
Java сервлет-это программа на стороне сервера, написанные на одноименном языке программирования, сигналы клиента и отправляет ему ответ. Это ключевой элемент, типичный Java EE, помимо JSP, EJB, XML и другие аналогичные технологии. Приложение может быть упаковано в файл WAR (Web AR chive) для развертывания на веб-сервере. Сервер, Java-сервлет, называется контейнером. Программа, которая работает на этом сервере страницы может создавать динамические Web -. Java Servlet: Основы
Самые популярные и широко распространенные контейнеры Tomcat и JBoss. Технически сервлет-это обычный Java-класс, который является расширением для общего клиент-сервер или HTTP протокол. На практике он применяется для обработки запросов, через HttpServlet переопределить GET и POST соответственно. Java Servlet Container предлагает Http.Servlet request и Http.Servlet Response объекты, которые по схеме запрос-ответ. И, как правило, в сочетании с JSP для генерации динамического контента.
Типичный сценарий модели: JSP предоставляет пользователю форму для ввода данных. Сервлет получает входные данные, обрабатывает их и отправляет ответ. Для качественной работы он использует специальные фильтры.
Java Servlet Filters-это плагин-Java-компонентов, которые используются для перехвата и обработки запросов, перед тем, как эти салфетки и ответ будет отправлен после завершения его коды, и прежде чем контейнер отправляет ответ клиенту.
Общие задачи с фильтрами: Зарегистрировать параметры поиска, чтобы зарегистрировать файлы. Проверка подлинности и авторизация запроса ресурсов. Форматирование тела запроса или заголовков перед отправкой в сервлет. Сжатие данных ответ передается клиенту. Ответ, изменить некоторые Cookies добавить. Информация Заголовка Java-Сервлет.
Фильтр подключен и настроен в файле Deployment Descriptor (web.xml). Сервлеты и фильтры не знаем друг друга, так что вы можете добавить или удалить фильтр, просто нажав web.xml. Несколько фильтров для одного ресурса или цепочку фильтров для web.xml позволили или запустите Java Servlet filters через реализацию javax.сервлет.Фильтр-Интерфейс. Основные функции сервлета
Параллельные запросы к серверу обрабатывает потоки, что важное качество Web - многопоточность и параллелизм.
Основные функции: Носкости. Поскольку Java, независимо от платформы, то же самое верно и для сервлетов. Например, вы можете сделать это на вашей операционной системе Windows, чтобы разработчики GlassFish использовали его в качестве веб-сервера, и тогда он может работать в любой другой операционной системы, такие как Unix, Linux с веб-сервером apache Java Servlet. Эта функция делает его переносимым, и это является основным преимуществом по сравнению с CGI. Эффективность и масштабируемость. Как только сервлет будет развернута и будет на веб-сервер, он сразу же может начать их выполнение запросов клиентов. Он будет протекать легко, так что множественные клиентские запросы будут заполнены одновременно, используя Java-функцию многопоточности. В отличие от CGI, где сервер запускает новый процесс для каждого запроса клиента. Надежность. Наследники верхнем Java-функции, такие как сборка мусора, обработка исключений, Java Security Manager и другие, которые менее склонны к проблемам с контролем и утечки памяти. Это делает разработку приложений в нем надежно и без ошибок. Необходимость применения динамических Web-страниц
Есть много причин, почему бизнес хочет создавать динамические Web-страницы «на лету», например, если данные на сайте часто меняются. Веб-сайты, Новости и погода, как правило, полагаться на CGI, чтобы поддерживать новый контент, который не требует постоянного внимания разработчиков. Web-сайтов электронной коммерции, в котором перечислены актуальные цены и складские запасы, использование CGI для этого on-demand-контента, сделав его из внутренней инфраструктуры компании.
Многие пользователи имеют опыт использования Java-технологий для разработки веб-сервисов на основе CGI, но Java сервлеты эффективнее, продуктивнее, проще и дешевле, чем традиционные альтернативы CGI.
Преимущества Java-Сервлетов: Эффективность. В традиционной CGI-каждый HTTP-запрос CGI запускает новый процесс. Даже если он код реализован идеально, без которых не обходится часто значительное количество накладных только при запуске процесса, а также во время его выполнения. Использование сервлетов, JVM заряженных остается в памяти, и каждый запрос обработан поток Java. В качестве примера Java Servlet, если в традиционной CGI-модели множества X одновременных запросов, это означает, что код загружается для программы в память Х раз. Это будет чрезмерная нагрузка на веб-сервер. Однако в Servlet-среде есть Х потоков, где запускается только одна копия в своем классе. В результате повышается эффективность и масштабируемость на нескольких платформах. Удобство. При использовании данной программы, изучение нового языка, например, Perl не имеет смысла, только для выполнения функций CGI. Кроме того, сервлеты имеют обширную инфраструктуру для многих задач, связанных с HTML, что значительно ускоряет развитие. Производительность - к сожалению, традиционные CGI-скрипты желать лучшего. Например, обычные программы не могут значит непосредственно в разговоре с Web-серверами, что, что необходимо создать всю поверхность. Сервлеты могут непосредственно взаимодействовать с Web-серверов, упрощающих операций, которые прямого доступа к памяти данных. Они также являются уникальными, поскольку они могут взаимодействовать с другими салями и поддержка информации используются между запросами, что позволяет отслеживать сессии очень легко. Переносимость Java распространяется непосредственно на сервлеты. На самом деле, почти каждый основной веб-сервер, который используется в настоящее время, поддерживает Java сервлеты напрямую или через плагин. Бережливость. В плане разработки, внедрения сервлеты намного дешевле, чем другие варианты, которые вам понадобятся, чтобы создать пользовательскую кодировку правильно на Web-серверах. Java Servlet redirect готов к работе и может снизить стоимость компании, не теряя при этом преимущества динамического контента. Создание структуры каталогов
Для начала, создадим следующую структуру каталогов.
Где в папке: Deploy - поместить созданный файл. Src - исходные файлы Java в пакете net.код Java.сервлет. WebContent - сохранить JSP-страниц и других веб-ресурсов. WebContent WEB-INF - установлены ручки web.xml. WebContent WEB-INF - скомпилированные классы.
Далее создать Java исходный файл под названием QuickServlet.java в каталоге src net код Java сервлета с помощью следующего кода.
Этот сервлет получает некоторые методы HttpServlet: init () - метод вызывается, когда он получает первым клиентом доступа. Обычно код инициализации здесь. doGet () - срабатывает каждый раз, когда HTTP-GET запрос.
Сервлет представляет собой два элемента: HttpServletRequest объект охватывает все заголовки HTTP-запроса, чтобы получить контроль над параметры GET / POST, а также другие HTTP-заголовки, отправленные клиентом с помощью метода getParameter () и getHeader (), соответственно. HttpServletResponse - используется для ответов на HTTP-запрос настроен ответа заголовок и HTML-содержимое и отправляет обратно пользователю. В методе doGet () отправка простой HTML-код, который передает сообщение, например «Привет, я Java Servlet!».
Метод для реализации требований заказчика: DoPost () - вызывается, когда пользователь HTTP-POST. DoGet () - понимает Http.Servlet request и Http.Servlet Response, как аргументы. В этом случае извлеките два значения ширины и высоты прямоугольника от требования в области расчета и отправляет результат обратно клиенту. Destroy () - контейнер вызывается, когда он нужен, чтобы удалить Java ee сервлет прекращено. Написание JSP-страницы
Создайте файл с именем index.jsp под WebContent каталог со следующим содержимым.
На этой странице JSP: Размещены гиперссылки с атрибутом href = Quick.Сервлет, который указывает на относительный путь сервлета и сопоставления URL-адресов для него. Нажав на эту ссылку GET, получить HTTP-запрос вызывается на сервер, и метод doGet (). Чтобы продемонстрировать отправку HTTP-запроса, создаем простую форму с двумя текстовыми полями: ширина и высота. Атрибут формы вписывается в сюжет на относительный путь. Кнопка «» Отправить как «Вычислить».
JSP-страницы будет выглядеть следующим образом.
Индикация и Настройка Java web-сервлет
Чтобы сервлет пользователь может обрабатывать запросы, вы должны объяснить, и настройте сопоставление в файле дескриптора Web. Создание XML-файла с расширением web.xml под WebContent каталог WEB-INF следующий XML-код.
Очевидно, что сервлет объявлен с элемента и его дочерних элементов, которые описательное имя для него и полное имя класса. Он предназначен для обслуживания запросов с использованием элемента и его дочерних частей, название, при помощи элемента и шаблон URL, который должен быть решен Carlton. Шаблон может точное совпадение каталога. Выполнение компиляции
Перед выполнением компиляции убедитесь, что среда переменных PATH, в том числе каталог в JDK_HOME, так что вы можете Container команд в одной строке и доступный файл, как правило, бесплатно сервлета.
При использовании Tomcat файл будет в TOMCAT_HOMElib и называется. Команды открывают строки-служебная программа операционной системы и изменить Рабочий каталог на Quick сервлет, как в структуре. Вводить следующую команду: javac -cp lib TOMCAT_HOME servlet-api.jar "-d CLASS_DIR SRC_DIR QuickServlet.java.
Замените имена TOMCAT.HOME, CLASS_DIR и SRC_DIR на значения: TOMCAT_HOME. Каталог установки на компьютере в папке Software. Если путь содержит пробелы, его необходимо заключить следующим образом: CLASS_DIR =WebContent WEB-INF-classes SRC_DIR =src net код Java servlet.
Эта команда компилирует файл QuickServlet.java и создается .Класс WebContent в WEB-INF-classes. Упаковка веб-приложений
В стандартной реализации Java EE БЫЛ находится в своей оригинальной упаковке с расширением. В строку вводят команды, обязательно в конце пункта указано: jarcfvdeployQuickServletApp.был-C WebContent.
Программа jar все будет в каталог в zip-архиве-формат под названием Quick.ServletApp.был под каталог. Теперь файл Quick разворачиваться.ServletApp.был на сервере, скопировать его в каталог Tomcat. Запустите программу, нажав Tomcat 7.exe в каталоге. После входа в консоль видно, что файл Quick.ServletApp.был развернут и сервер прослушивает порт 8080. Проверить QuickServletApp
Теперь открываем веб-браузер и введите следующий текст в адресной строке: HTTP: // localhost: 8080 / QuickServletApp. Поскольку конкретная страница не указана, поэтому стандартный индекс.jsp сам загружается.
Чтобы проверить сервлет HTTP-запрос GET, нажмите на гиперссылку «Нажмите здесь, чтобы отправить GET-запрос». Чтобы проверить его с помощью HTTP POST-запрос, нажимают кнопку браузера и введите два числа в ширину и высоту текстового поля. Нажмите кнопку Рассчитать, и он делает в расчетной области в результате. Примеры Tomcat
Сервлет-это Java веб-компонент, управляет контейнер, например, Tomcat, которая генерирует динамический контент в ответ на запрос клиента. Контейнер или Servlet-Engine-это расширение для веб-серверов, которая позволяет функциональность сервлета. Контейнер содержит и управляет салями на протяжении всего жизненного цикла.
Сервлет-интерфейс централизованного абстракции API Java. HttpServlet является наиболее распространенной сервлет, который обрабатывает HTTP-запросы, подкласс, Generic сервлет сервлет реализует интерфейс. Сервлет-интерфейс сам декларирует эти абстрактные методы.
Жизненный цикл сервлета: voidinit (Конфигурирование сервлета.Config) voiddestroy () voidservice (заявлению Java Servlet request, ответ сервлета.Комментарий)
Конфигурации сервлета и информация: Servlet.Config getServlet.Config () строку getServlet.Info (). Java-Server-Функция
JSP - другой эффективный метод создания динамического Web-контента с Java. Самый простой способ объяснить разницу между ними видно, что сервлет-это Java и HTML в JSP - Java в HTML. Оба метода эффективны и могут использоваться независимо, но есть несколько отличий: Как правило, быстрее, чем сервлеты JSP, JSP однако может быть скомпилирован на Java-сервлеты. Web-разработчик Java, также должны быть знакомы с обеими технологиями и как они могут дополнять друг друга в реализации. Многие функции JSP достигает клиента могут быть предварительно заданы JavaScript. Это снижает нагрузку на веб-сервер в периоды максимального использования и часто один метод, показатели крупных компаний с постоянно высокой посещаемостью.
Хотя автономные Java-приложения, достигнет пика популярности несколько лет назад, но динамичный веб-контент, который на технологиях Java, по-прежнему пользуется большим спросом у компаний по всему миру.
Если пользователь не использует в настоящее время Java сервлеты для создания динамического контента, он пропустил интересное поле с неограниченными возможностями для карьерного роста. Автор: Иван Фролов 10. Ноябрь, 2018
Категория: Мобильные телефоны