Информация о книге

978-5-97060-135-8

Главная  » Научно-техническая литература » Информационные технологии. Компьютеры » Базы данных » Базы данных. Проектирование, организация доступа, анализ данных » EJB 3 в действии

Купрак Р., Панда Д., Рахман Р., Ремижан М., EJB 3 в действии


серия: Программирование в действии
ДМК-Пресс, 2015 г., 978-5-97060-135-8


Наличие в интернет-магазинах

Магазинов: 4, Цена: от 1474 руб. посмотреть все

Описание книги

Фреймворк EJB 3 предоставляет стандартными способ оформления прикладной логики в виде управляемых модулей, которые выполняются на стороне сервера, упрощая тем самым создание, сопровождение и расширение приложений Java ЕЕ. Версия EJB 3.2 включает большее число расширений и более тесно интегрируется с другими технологиями Java, такими как CDI, делая разработку еще проще. Книга знакомит читателя с EJB на многочисленных примерах кода, сценариях из реальной жизни и иллюстрациях. Помимо основ в ней описываются некоторые особенности внутренней реализации, наиболее эффективные приемы использования, шаблоны проектирования, даются советы по оптимизации производительности и различные способы доступа, включая веб-службы, службы REST и веб-сокеты. Издание предназначено программистам, уже знающим язык Java. Опыт работы с EJB или Java ЕЕ не требуется.

Купить эту книгу можно в интернет-магазинах

  My-Shop - 1474 руб.   Book24 - 2409 руб.   Буквоед - 2409 руб.   Читай-Город - 2409 руб.
  Страница товара выбранного интернет-магазина откроется в новом табе

Скачать, но не бесплатно эту книгу можно в интернет-магазинах

  Литрес - 799 руб.

Читать онлайн


Доступен для чтения фрагмент книги

Ключевые слова


  tomcat 


Поделиться ссылкой на книгу



Содержание книги

Предисловие
Благодарности
О книге
Структура книги
Загружаемый исходный код
Соглашения по оформлению исходного кода
Автор в сети
О названии
Об авторах
Об иллюстрации на обложке
ЧАСТЬ I
Обзор ландшафта EJB
Глава 1. Что такое EJB 3
1.1.Обзор EJB
1.1.1. EJB как модель компонентов
1.1.2. Службы компонентов EJB
1.1.3. Многоуровневые архитектуры и EJB
1.1.4. Почему стоит выбрать EJB 3?
1.2.Основы типов EJB
1.2.1. Сеансовые компоненты
1.2.2. Компоненты, управляемые сообщениями
1.3.Связанные спецификации
1.3.1. Сущности и Java Persistence API
1.3.2. Контексты и внедрение зависимостей для
Java EE
1.4.Реализации EJB
1.4.1. Серверы приложений
1.4.2. EJB Lite
1.4.3. Встраиваемые контейнеры
1.4.4. Использование EJB 3 в Tomcat
1.5.Превосходные инновации
1.5.1. Пример "Hello User"
1.5.2. Аннотации и XML
1.5.3. Значения по умолчанию и явные настройки
1.5.4. Внедрение зависимостей и поиск в JNDI
1.5.5. CDI и механизм внедрения в EJB
1.5.6. Тестируемость компонентов POJO
1.6.Новшества в EJB 3.2
1.6.1. Поддержка EJB 2 теперь является
необязательной
1.6.2. Усовершенствования в компонентах,
управляемых сообщениями
1.6.3. Усовершенствования в сеансовых
компонентах с сохранением состояния
1.6.4. Упрощение локальных интерфейсов
компонентов без сохранения состояния
1.6.5. Усовершенствования в TimerService API
1.6.6. Усовершенствования в EJBContainer API
1.6.7. Группы EJB API
1.7.В заключение
Глава 2. Первая проба EJB
2.1.Введение в приложение ActionBazaar
2.1.1. Архитектура
2.1.2. Решение на основе EJB 3
2.2.Реализация прикладной логики с применением
EJB 3
2.2.1. Использование сеансовых компонентов без
сохранения состояния
2.2.2 Использование сеансовых компонентов с
сохранением состояния
2.2.3.Модульное тестирование компонентов EJB 3
2.3.Использование CDI с компонентами EJB 3
2.3.1. Использование CDI с JSF 2 и EJB 3
2.3.2. Использование CDI с EJB 3 и JPA 2
2.4.Использование JPA 2 с EJB 3
2.4.1. Отображение сущностей JPA 2 в базу
данных
2.4.2. Использование EntityManager
2.5.В заключение
ЧАСТЬ II
Компоненты EJB
Глава 3. Реализация прикладной логики с
помощью сеансовых
компонентов
3.1.Знакомство с сеансовыми компонентами
3.1.1. Когда следует использовать сеансовые
компоненты
3.1.2. Состояние компонента и типы сеансовых
компонентов
3.2.Сеансовые компоненты без сохранения
состояния
3.2.1. Когда следует использовать сеансовые
компоненты без сохранения состояния
3.2.2. Организация компонентов в пулы
3.2.3. Пример BidService
3.2.4. Применение аннотации @Stateless
3.2.5. Прикладные интерфейсы компонентов
3.2.6. События жизненного цикла
3.2.7. Эффективное использование сеансовых
компонентов без сохранения состояния
3.3.Сеансовые компоненты с сохранением
состояния
3.3.1. Когда следует использовать сеансовые
компоненты
с сохранением состояния
3.3.2. Пассивация компонентов
3.3.3. Сеансовые компоненты с сохранением
состояния в кластере
3.3.4. Пример реализации создания учетной записи
3.3.5. Применение аннотации @Stateful
3.3.6. Прикладные интерфейсы компонентов
3.3.7. События жизненного цикла
3.3.8. Эффективное использование сеансовых
компонентов с сохранением состояния
3.4.Сеансовые компоненты-одиночки
3.4.1. Когда следует использовать сеансовые
компоненты-одиночки
3.4.2. Пример реализации "товара дня" в
ActionBazaar
3.4.3. Применение аннотации @Singleton
3.4.4. Управление конкуренцией в
компоненте-одиночке
3.4.5. Прикладной интерфейс компонента
3.4.6. События жизненного цикла
3.4.7. Аннотация @Startup
3.4.8. Эффективное использование сеансовых
компонентов-одиночек
3.5.Асинхронные сеансовые компоненты
3.5.1. Основы асинхронного вызова
3.5.2. Когда следует использовать асинхронные
сеансовые компоненты
3.5.3. Пример компонента ProcessOrder
3.5.4. Применение аннотации @Asynchronous
3.5.5. Применение интерфейса Future
3.5.6. Эффективное использование асинхронных
сеансовых компонентов
3.6.В заключение
Глава 4. Обмен сообщениями и разработка
компонентов MDB
4.1.Концепции обмена сообщениями
4.1.1. Промежуточное ПО передачи сообщений
4.1.2. Обмен сообщениями в ActionBazaar
4.1.3. Модели обмена сообщениями
4.2.Введение в JMS
4.2.1. Интерфейс JMS Message
4.3.Использование компонентов MDB
4.3.1. Когда следует использовать обмен
сообщениями и компоненты MDB
4.3.2. Почему следует использовать MDB?
4.3.3. Разработка потребителя сообщений с
применением MDB
4.3.4. Применение аннотации @MessageDriven
4.3.5. Реализация интерфейса MessageListener
4.3.6. Использование параметра
ActivationConfigProperty
4.3.7. События жизненного цикла
4.3.8. Отправка сообщений JMS из компонентов
MDB
4.3.9. Управление транзакциями MDB
4.4. Приемы использования компонентов MDB
4.5. В заключение
Глава 5. Контекст EJB времени выполнения,
внедрение
зависимостей и сквозная логика
5.1.Контекст EJB
5.1.1. Основы контекста EJB
5.1.2. Интерфейсы контекста EJB
5.1.3. Доступ к контейнеру через контекст EJB
5.2.Использование EJB DI и JNDI
5.2.1. Пример использования JNDI в EJB
5.2.2. Как присваиваются имена компонентам EJB
5.2.3. Внедрение зависимостей с применением
@EJB
5.2.4. Когда следует использовать внедрение
зависимостей EJB
5.2.5. Аннотация @EJB в действии
5.2.6. Внедрение ресурсов с помощью аннотации
@Resource
5.2.7. Когда следует использовать внедрение
ресурсов
5.2.8. Аннотация @Resource в действии
5.2.9. Поиск ресурсов и компонентов EJB в JNDI
5.2.10. Когда следует использовать поиск в JNDI
5.2.11. Контейнеры клиентских приложений
5.2.12. Встраиваемые контейнеры
5.2.13. Эффективный поиск и внедрение
компонентов EJB
5.2.14. Механизмы внедрения EJB и CDI
5.3.AOP в мире EJB: интерцепторы
5.3.1. Что такое AOP?
5.3.2. Основы интерцепторов
5.3.3. Когда следует использовать интерцепторы
5.3.4. Порядок реализации интерцепторов
5.3.5. Определение интерцепторов
5.3.6. Интерцепторы в действии
5.3.7. Эффективное использование интерцепторов
5.3.8. Интерцепторы CDI и EJB
5.4.В заключение
Глава 6. Транзакции и безопасность
6.1.Знакомство с транзакциями
6.1.1. Основы транзакций
6.1.2. Транзакции в Java
6.1.3. Транзакции в EJB
6.1.4. Когда следует использовать транзакции
6.1.5. Как реализованы транзакции EJB
6.1.6. Двухфазное подтверждение
6.1.7. Производительность JTA
6.2.Транзакции, управляемые контейнером
6.2.1. Досрочное оформление заказов с
применением модели CMT
6.2.2. Аннотация @TransactionManagement
6.2.3. Аннотация @TransactionAttribute
6.2.4. Откат транзакций в модели CMT
6.2.5. Транзакции и обработка исключений
6.2.6. Синхронизация с сеансом
6.2.7. Эффективное использование модели CMT
6.3.Транзакции, управляемые компонентами
6.3.1. Досрочное оформление заказов с
применением модели BMT
6.3.2. Получение экземпляра UserTransaction
6.3.3. Использование интерфейса UserTransaction
6.3.4. Эффективное использование модели BMT
6.4.Безопасность EJB
6.4.1. Аутентификация и авторизация
6.4.2. Пользователи, группы и роли
6.4.3. Как реализована поддержка безопасности в
EJB
6.4.4. Декларативное управление безопасностью
в EJB
6.4.5. Программное управление безопасностью в
EJB
6.4.6. Эффективное использование поддержки
безопасности в EJB
6.5.В заключение
Глава 7. Планирование и таймеры
7.1.Основы планирования
7.1.1. Возможности Timer Service
7.1.2. Таймауты
7.1.3. Cron
7.1.4. Интерфейс Timer
7.1.5. Типы таймеров
7.2.Декларативные таймеры
7.2.1. Аннотация @Schedule
7.2.2. Аннотация @Schedules
7.2.3. Параметры аннотации @Schedule
7.2.4. Пример использования декларативных
таймеров
7.2.5. Синтаксис правил в стиле cron
7.3.Программные таймеры
7.3.1. Знакомство с программными таймерами
7.3.2. Пример использования программных
таймеров
7.3.3. Эффективное использование программных
таймеров EJB
7.4.В заключение
Глава 8. Компоненты EJB как веб-службы
8.1.Что такое "веб-служба"?
8.1.1. Свойства веб-служб
8.1.2. Транспорты
8.1.3. Типы веб-служб
8.1.4. Java EE API для веб-служб
8.1.5. Веб-службы и JSF
8.2.Экспортирование компонентов EJB с
использованием SOAP (JAX-WS)
8.2.1. Основы SOAP
8.2.2. Когда следует использовать службы SOAP
8.2.3. Когда следует экспортировать компоненты
EJB в виде веб-служб SOAP
8.2.4. Веб-служба SOAP для ActionBazaar
8.2.5. Аннотации JAX-WS
8.2.6. Эффективное использование веб-служб
SOAP в EJB
8.3.Экспортирование компонентов EJB с
использованием REST (JAX-RS)
8.3.1. Основы REST
8.3.2. Когда следует использовать REST/JAX-RS
8.3.3. Когда следует экспортировать компоненты
EJB в виде веб-служб REST
8.3.4. Веб-служба REST для ActionBazaar
8.3.5. Аннотации JAX-RS
8.3.6. Эффективное использование веб-служб
REST в EJB
8.4. Выбор между SOAP и REST
8.5. В заключение
ЧАСТЬ III
Использование EJB совместно с JPA и CDI
Глава 9. Сущности JPA
9.1.Введение в JPA
9.1.1. Несоответствие интерфейсов
9.1.2. Взаимосвязь между EJB 3 и JPA
9.2.Предметное моделирование
9.2.1. Введение в предметное моделирование
9.2.2. Предметная модель приложения
ActionBazaar
9.3.Реализация объектов предметной области с
помощью JPA
9.3.1. Аннотация @Entity
9.3.2. Определение таблиц
9.3.3. Отображение свойств в столбцы
9.3.4. Типы представления времени
9.3.5. Перечисления
9.3.6. Коллекции
9.3.7. Определение идентичности сущностей
9.3.8. Генерирование значений первичных ключей
9.4.Отношения между сущностями
9.4.1. Отношение "один к одному"
9.4.2. Отношения "один ко многим" и "многие к
одному"
9.4.3. Отношение "многие ко многим"
9.5.Отображение наследования
9.5.1. Стратегия единой таблицы
9.5.2. Стратегия соединения таблиц
9.5.3. Стратегия отдельных таблиц для каждого
класса
9.6.В заключение
Глава 10. Управление сущностями
10.1.Введение в использование EntityManager
10.1.1. Интерфейс EntityManager
10.1.2. Жизненный цикл сущностей
10.1.3. Контекст сохранения, области видимости и
EntityManager
10.1.4. Использование EntityManager в ActionBazaar
10.1.5. Внедрение EntityManager
10.1.6. Внедрение EntityManagerFactory
10.2.Операции с хранилищем
10.2.1. Сохранение сущностей
10.2.2. Извлечение сущностей по ключу
10.2.3. Изменение сущностей
10.2.4. Удаление сущностей
10.3.Запросы сущностей
10.3.1. Динамические запросы
10.3.2. Именованные запросы
10.4.В заключение
Глава 11. JPQL
11.1.Введение в JPQL
11.1.1. Типы инструкций
11.1.2. Предложение FROM
11.1.3. Инструкция SELECT
11.1.4. Управление результатами
11.1.5. Соединение сущностей
11.1.6. Операции массового удаления и изменения
11.2.Запросы Criteria
11.2.1. Метамодели
11.2.2. CriteriaBuilder
11.2.3. CriteriaQuery
11.2.4. Корень запроса
11.2.5. Предложение FROM
11.2.6. Предложение SELECT
11.3.Низкоуровневые запросы
11.3.1. Динамические SQL-запросы
11.3.2. Именованные SQL-запросы
11.3.3. Хранимые процедуры
11.4.В заключение
Глава 12. Использование CDI в EJB 3
12.1.Введение в CDI
12.1.1. Службы CDI
12.1.2. Отношения между CDI и EJB 3
12.1.3. Отношения между CDI и JSF 2
12.2.Компоненты CDI
12.2.1. Как пользоваться компонентами CDI
12.2.2. Именование компонентов и их разрешение
в выражениях EL
12.2.3. Области видимости компонентов
12.3.Следующее поколение механизмов
внедрения зависимостей
12.3.1. Внедрение с помощью @Inject
12.3.2. Фабричные методы
12.3.3. Квалификаторы
12.3.4. Методы уничтожения
12.3.5. Определение альтернатив
12.4.Интерцепторы и декораторы
12.4.1. Привязка интерцепторов
12.4.2. Декораторы
12.5. Стереотипы
12.6. Внедрение событий
12.7. Диалоги
12.8. Эффективное использование CDI в EJB 3
12.9. В заключение
ЧАСТЬ IV
Ввод EJB в действие
Глава 13. Упаковка приложений EJB 3
13.1.Упаковка приложений
13.1.1. Строение системы модулей Java EE
13.1.2. Загрузка модулей Java EE
13.2.Загрузка классов
13.2.1. Основы загрузки классов
13.2.2. Загрузка классов в приложениях Java EE
13.2.3. Зависимости между модулями Java EE
13.3.Упаковка сеансовых компонентов и
компонентов, управляемых
сообщениями
13.3.1. Упаковка EJB-JAR
13.3.2. Упаковка компонентов EJB в модуль WAR
13.3.3. XML против аннотаций
13.3.4. Переопределение настроек, указанных в
аннотациях
13.3.5. Определение интерцепторов по умолчанию
13.4.Упаковка сущностей JPA
13.4.1. Модуль доступа к хранимым данным
13.4.2. Описание модуля доступа к хранимым
данным в persistence.xml
13.5.Упаковка компонентов CDI
13.5.1. Модули CDI
13.5.2. Дескриптор развертывания beans.xml
13.5.3. Атрибут bean-discovery-mode
13.6.Эффективные приемы и типичные проблемы
развертывания
13.6.1. Эффективные приемы упаковки и
развертывания
13.6.2. Решение типичных проблем развертывания
13.7.В заключение
Глава 14. Использование веб-сокетов с EJB 3
14.1. Ограничения схемы взаимодействий
"запрос/ответ"
14.2. Введение в веб-сокеты
14.2.1. Основы веб-сокетов
14.2.2. Веб-сокеты и AJAX
14.2.3. Веб-сокеты и Comet
14.3.Веб-сокеты и Java EE
14.3.1. Конечные точки веб-сокетов
14.3.2. Интерфейс Session
14.3.3. Кодеры и декодеры
14.4.Веб-сокеты в приложении ActionBazaar
14.4.1. Использование программных конечных
точек
14.4.2. Использование аннотированных конечных
точек
14.5. Эффективное использование веб-сокетов
14.6. В заключение
Глава 15. Тестирование компонентов EJB
15.1.Введение в тестирование
15.1.1. Стратегии тестирования
15.2. Модульное тестирование компонентов EJB
15.3. Интеграционное тестирование с
использованием EJBContainer
15.3.1. Настройка проекта
15.3.2. Интеграционный тест
15.4.Интеграционное тестирование с применением
Arquillian
15.4.1. Настройка проекта
15.4.2. Интеграционный тест
15.5. Приемы эффективного тестирования
15.6. В заключение
Приложение А. Дескриптор развертывания,
справочник
A.1. ejb-jar.xml
A.1.1. <module-name>
A.1.2. <enterprise-beans>
A.1.3. Интерцепторы
A.1.4. <assembly-descriptor>
Приложение B. Введение в Java EE 7 SDK
B.1. Установка Java EE 7 SDK
B.2. GlassFish Administration Console
B.3. Запуск и остановка GlassFish
B.4. Запуск приложения "Hello World"
Приложение C. Сертификационные экзамены
разработчика
для EJB 3
C.1. Начало процесса сертификации
C.2. Порядок прохождения сертификационных
испытаний
для разработчиков EJB 3
C.3. Знания, необходимые для прохождения
испытаний
C.4. Подготовка к испытаниям
C.5. Сертификационные испытания
Предметный указатель


Об авторе


Отзывы

Алексей  [17 August 2016]
Несмотря на название, помимо EJB, книга охватывает все основные технологии JavaEE. Отлично подойдет молодым программистам в качестве введения в данную область. Также подходит в качестве справочника, хотя примеры могли бы быть поинтереснее и попрактичнее. Для человека, работающего в данной теме, книга достаточно полезна.
Отличная книга  [ 6 June 2015]
Очень качественная подача материала, как и сам материал.

Не пожалел, что купил.
Хорошая книга для тех кто еще не читал про EJB3  [18 May 2015]
Книга хорошая, и даже известная, в сети часто на нее ссылаются.
Изложение подробное и полное

Но если у вас уже были книги по EJB3 то ничего нового из нее не узнать.

Книга полезна тем кто только планирует осваивать EJB

Последние поступления в рубрике "Базы данных. Проектирование, организация доступа, анализ данных"



Интеллектуальные информационные системы Интеллектуальные информационные системы Глухих И.

В учебном пособии излагается основное содержание материала лекций по дисциплине «Интеллектуальные информационные системы», представлены тестовые задания, вопросы для самоконтроля и итогового контроля знаний, глоссарий, список литературы....

Искусственный интеллект. Инженерия знаний. Учебное пособие для вузов Искусственный интеллект. Инженерия знаний. Учебное пособие для вузов Загорулько Ю.

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

Системы искусственного интеллекта. Нейросети и нейрокомпьютеры. Учебник Системы искусственного интеллекта. Нейросети и нейрокомпьютеры. Учебник Свирина А., Костров Б.В., Ручкин В.Н.

Исследуется возможность построения логических нейронных сетей на основе положений математической логики.Предлагаются методы построения обученных нейронных сетей. Рассматриваются пути повышения интеллектуальности вычислительных систем....

Если Вы задавались вопросами "где найти книгу в интернете?", "где купить книгу?" и "в каком книжном интернет-магазине нужная книга стоит дешевле?", то наш сайт именно для Вас. На сайте книжной поисковой системы Книгопоиск Вы можете узнать наличие книги Купрак Р., Панда Д., Рахман Р., Ремижан М., EJB 3 в действии в интернет-магазинах. Также Вы можете перейти на страницу понравившегося интернет-магазина и купить книгу на сайте магазина. Учтите, что стоимость товара и его наличие в нашей поисковой системе и на сайте интернет-магазина книг может отличаться, в виду задержки обновления информации.