Java EE 6 и сервер приложений GlassFish 3

Java EE 6 и сервер приложений GlassFish 3
Автор: Хеффельфингер Д.
Год: 2013
ISBN: 978-5-94074-902-8
Страниц: 416
Язык: Русский
Формат: PDF
Размер: 19 Мб

Download

Книга представляет практическое руководство с удобной структурой. Книга дает возможность быстро и легко изучить и использовать технологии Java EE 6. Автор детально рассматривает все интерфейсы Java EE 6 и дает подробную информация относительно сервера GlassFish 3, сопровождает эту информацию практическими примерами их применения. Для корпоративных вычислений Java, платформа Java Enterprise Edition (Java EE) 6 является отраслевым стандартом. Сервер приложений GlassFish – это эталонная среда для реализации спецификации Java EE. Автор рассматривает разные аннотации и соглашения Java EE 6, которые дают возможность сделать разработку корпоративных приложений Java проще.
В книге представлены описания последних версий технологий Servlet, JSF, JSP, JPA, JAX-WS, EJB. Даны новейшие дополнения к спецификации Java EE, в том числе JAX-RS и CDI. Детально рассматриваются задачи администрирования, конфигурирования а также применения для развертывания корпоративных приложений сервера GlassFish 3. Книга адресована разработчикам Java, которые хотят стать специалистами по разработке корпоративных приложений с использованием платформы Java EE 6. Для освоения материала нужен опыт работы с Java, но специальные знания в области Java EE или J2EE не обязательны.
Компания Oracle официально рекомендует книгу как учебное пособие разработчикам перечисленных технологий.

+

Темы, освещаемые в книге
В главе 1, «Знакомство с сервером GlassFish», объясняется, как загрузить и уста­новить сервер GlassFish. Здесь мы рассмотрим несколько методов развертывания приложений Java ЕЕ: через веб-консоль GlassFish, с помощью утилиты командной строки asadmin и путем копирования файла приложения в каталог авторазверты­вания. Мы рассмотрим основные задачи администрирования GlassFish, такие как настройка доменов и настройка соединений с базой данных, добавление пулов соединений и источников данных.

В главе 2, «Разработка и развертывание сервлета», показано, как разработать, скон­фигурировать, упаковать и развернуть сервлеты. Также мы рассмотрим, как обра­ботать информацию HTML-формы, получая доступ к объекту HTTP-запроса. В до­полнение будет объяснена переадресация HTTP-запросов от одного сервлета к дру­гому, наряду с перенаправлением HTTP-отклика на другой сервер. Мы обсудим, как сохранить объекты в памяти с помощью запросов, присоединяя их к контексту серв­лета и HTTP-сеанса. Наконец, мы рассмотрим все важные новые функции Сервле­та 3.0, включая конфигурирование веб-приложений с помощью аннотаций, подклю­чаемость с помощью web-fragment.xml, программное конфигурирование сервлета и асинхронную обработку.

Глава 3, «JavaServer Pages»,содержит сведения о том, как разработать и развернуть простую JSP-страницу. Мы рассмотрим, как получить доступ к неявным объектам, таким как запрос, сеанс и т. д., из JSP-страницы. Кроме того, мы выясним, как уста­новить и получить значения свойств JavaBean с помощью тега <jsp:usBean>. Поговорим и о том, как включить одну JSP-страницу в другую во время выполне­ния с помощью тега <jsp:include> и во время компиляции с помощью директивы JSP include. Мы обсудим, как написать пользовательские JSP-теги, расширяющие javax.servlet.jsp.tagext.SimpleTagSupport или TAG-файлы. Также будет показано, как получить доступ к JavaBeans и их свойствам с помощью Унифициро­ванного языка выражений (Unified Expression Language). Наконец, мы рассмотрим XML-синтаксис JSP, который позволяет нам разрабатывать XML-совместимые JSP-страницы.

Глава 4, «Библиотека стандартных тегов JSP», познакомит нас со всеми Библио­теками стандартных тегов JSP (JSP Standard Tag Library (JSTL)), включая библио­теки базовых тегов, тегов форматирования, SQL- и XML-тегов. Кроме этого, будут объяснены функции JSTL. В главе приведены примеры, поясняющие использование наиболее распространенных тегов JSTL; также упоминаются и описываются допол­нительные JSTL-теги.

В главе 5, «Подключение к базе данных», рассказывается о том, как получить до­ступ к данным в базе данных с помощью API Подключения к базе данных Java (Java Database Connectivity (JDBC)) и через API Персистентности Java (Java Persistence API (JPA)). Будут рассмотрены определения однонаправленных и двунаправлен­ных отношений «один к одному», «один ко многим» и «многие ко многим» между JPA-сущностями. Помимо прочего, мы обсудим, как использовать первичные ключи составной JPA-сущности путем разработки пользовательских классов первично­го ключа. Также будет показано, как получить объекты из базы данных путем ис­пользования Языка запросов персистентности Java (Java Persistence Query Language(JPQL)). Вы узнаете, как создавать программные запросы с помощью API Крите­риев JPA 2.0 (JPA 2.0 Criteria API) и автоматизировать проверку допустимости дан­ных с помощью поддерживаемой JPA 2.0 Проверки допустимости со стороны бинов (Bean Validation Support).

Глава 6, «JavaServer Faces»,посвящена разработке веб-приложений с использовани­ем JavaServer Faces – стандартного каркаса компонентов для платформы Java ЕЕ 5. Мы поговорим о том, как написать простое приложение, создав JSP-страницу, со­держащую JSF-теги и управляемые бины (managed beans). Обсудим, как проверить данные, вводимые пользователем, путем использования стандартных блоков про­верки допустимости JSF и создаваемых нами собственных блоков проверки допу­стимости или путем написания методов блока проверки допустимости. Рассмотрим, как настроить стандартные сообщения об ошибках JSF – и текст сообщения, и стиль сообщения (шрифт, цвет и т. д.). Наконец, узнаем, как написать приложения, интег­рирующие технологии JSF и API Персистентности Java (JPA).

Глава 7, «Служба обмена сообщениями Java», повествует о том, как настроить в GlassFish фабрики соединений JMS, очереди и темы сообщений JMS, используя веб-консоль GlassFish. Мы рассмотрим, как отправлять и получать сообщения в оче­редь и из очереди сообщений JMS. Обсудим, как отправлять и получать сообщения в тему и из темы сообщений JMS. Узнаем, как просмотреть сообщения в очереди сообщений не удаляя их из очереди. В завершение будет показано, как создать и на­строить темы JMS и взаимодействовать с долговременными подписчиками (durable subscriptions) на них.

Глава 8, «Безопасность»,рассказывает о том, как использовать для аутентификации наших веб-приложений установленные по умолчанию области (realms) GlassFish. Мы рассмотрим область файла (file realm), которая хранит пользовательскую ин­формацию в плоском файле, и область сертификата (certificate realm), которая тре­бует клиентских сертификатов для пользовательской аутентификации. Кроме того,обсудим, как создать дополнительные области аутентификации, которые ведут себя точно так же, как области по умолчанию, при использовании классов области, вклю­ченных в GlassFish.

Глава 9, «Enterprise JavaBeans», объясняет, как реализовать бизнес-логику с помо­щью сохраняющих и не сохраняющих состояние сеансовых бинов (session beans). Кроме того мы разъясним понятия транзакций, управляемых контейнером, и тран­закций, управляемых бином. Будут рассмотрены жизненные циклы для различных типов Enterprise JavaBeans. Мы поговорим о том, как периодически вызывать мето­ды EJB – контейнером EJB, используя возможности службы таймера EJB. Наконец, мы расскажем, как сделать так, чтобы EJB методы могли были быть вызваны только авторизованными пользователями.

Глава 10, «Контексты и инжекция зависимости», расскажет нам о том, как JSF страница, может получить доступ к именованным бинам (named beans) CDI, как будто они являются управляемыми бинами (managed beans) JSF. Мы объясним, как CDI облегчает внедрение (инжекцию) зависимостей в наш код. Мы обсудим, как можно использовать квалификаторы (qualifiers), чтобы определить, какие конкретно реализации зависимостей инжектировать в наш код. Наконец, мы рассмотрим все контексты, в которые может быть помещен бин CDI.

Глава 11, «Веб-сервисы JAX-WS»,рассматривает, как разработать веб-сервисы и кли­ентов веб-сервисов с помощью API JAX-WS. Мы обсудим, как отправлять вложения веб-сервису, как представить методы EJB в качестве веб-сервисов и, наконец, как обеспечить безопасность веб-сервисов, чтобы они не были доступны неавторизо­ванным клиентам.

В главе 12, «RESTful веб-сервисы в Jersey и JAX-RS»,обсуждается, как легко и быс­тро разработать RESTful веб-сервисы, используя API JAX-RS – новое дополнение к спецификации Java ЕЕ. Мы объясним, как автоматически преобразовать данные между Java и XML, используя возможности API Java для связывания с XML (Java API for XML Binding (JAXB)). Наконец, мы рассмотрим, как передать параметры нашим RESTful веб-сервисам с помощью аннотаций 0PathParam и @QueryParam.