Разработка приложений Java EE 7 в NetBeans 8
Покупка
Тематика:
Программирование на Java
Издательство:
ДМК Пресс
Автор:
Хеффельфингер Дэвид
Перевод:
Киселев Артём Николаевич
Год издания: 2023
Кол-во страниц: 349
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
Профессиональное образование
ISBN: 978-5-89818-607-4
Артикул: 817109.01.99
Доступ онлайн
В корзину
Книга представляет собой практическое руководство по использованию возможностей IDE NetBeans 8 для разработки корпоративных приложений, совместимых со стандартом Java EE 7.
В книге показаны приемы эффективного программирования, задействующие контекстные меню и «горячие» клавиши, мастера и шаблоны среды NetBeans, затрагиваются вопросы создания, конфигурирования, развертывания, отладки и профилирования корпоративных приложений с использованием средств, встроенных в IDE NetBeans.
Существенное внимание уделено основным API Java EE в контексте их работы в среде NetBeans. Подробно рассмотрены возможности NetBeans по автоматизации разработки приложений с использованием таких API, как Servlet, JSP, JSTL, JSF, JMS, JPA, JDBC, EJB, JAXWS, JAXRS, а также по созданию для них инфраструктурных, коммуникационных и конфигурационных элементов. Затронуты вопросы взаимодействия среды NetBeans с различными серверами приложений, СУБД и внешними службами.
Приводится пример автоматического создания законченного корпоративного приложения из существующей схемы базы данных, а также примеры создания вебслужб и автоматического создания их клиентов.
Книга рассчитана на программистов, желающих разрабатывать Java EEприложения c использованием функциональных возможностей IDE NetBeans.
Для чтения книги необходимо иметь некоторый опыт работы с Java, в то время как начального знакомства с NetBeans и Java EE не требуется.
- Полная коллекция по информатике и вычислительной технике
- ДМК Пресс. Информационные системы и технологии
- ДМК Пресс. ИТ-технологии для профессионалов
- Интермедиатор. Информационные системы и технологии (сводная)
- Интермедиатор. ИТ-технологии для профессионалов (сводная)
- Программирование
- Программирование на Java
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.04: Программная инженерия
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов.
Для полноценной работы с документом, пожалуйста, перейдите в
ридер.
Дэвид Хеффельфингер Разработка приложений Java EE 7 в NetBeans 8
Java EE 7 Development with NetBeans 8 Develop professional enterprise Java EE applications quickly and easily with this popular IDE David R. Heffelfinger BIRMINGHAM - MUMBAI
Разработка приложений Java EE 7 в NetBeans 8 Простая и быстрая разработка корпоративных приложений Java EE с помощью среды разработки NetBeans Дэвид Хеффельфингер Москва, 2023 2-е издание, электронное
УДК 004.438Java EE ББК 32.973.26-018.2 Х41 Х41 Хеффельфингер, Дэвид. Разработка приложений Java EE 7 в NetBeans 8 / Д. Хеффельфингер ; пер. с англ. А.Н. Киселёва. — 2-е изд., эл. — 1 файл pdf : 349 с. — Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный. ISBN 978-5-89818-607-4 Книга представляет собой практическое руководство по использованию возможностей IDE NetBeans 8 для разработки корпоративных приложений, совместимых со стандартом Java EE 7. В книге показаны приемы эффективного программирования, задействующие контекстные меню и «горячие» клавиши, мастера и шаблоны среды NetBeans, затрагиваются вопросы создания, конфигурирования, развертывания, отладки и профилирования корпоративных приложений с использованием средств, встроенных в IDE NetBeans. Существенное внимание уделено основным API Java EE в контексте их работы в среде NetBeans. Подробно рассмотрены возможности NetBeans по автоматизации разработки приложений с использованием таких API, как Servlet, JSP, JSTL, JSF, JMS, JPA, JDBC, EJB, JAXWS, JAXRS, а также по созданию для них инфраструктурных, коммуникационных и конфигурационных элементов. Затронуты вопросы взаимодействия среды NetBeans с различными серверами приложений, СУБД и внешними службами. Приводится пример автоматического создания законченного корпоративного приложения из существующей схемы базы данных, а также примеры создания вебслужб и автоматического создания их клиентов. Книга рассчитана на программистов, желающих разрабатывать Java EEприложения c использованием функциональных возможностей IDE NetBeans. Для чтения книги необходимо иметь некоторый опыт работы с Java, в то время как начального знакомства с NetBeans и Java EE не требуется. УДК 004.438Java EE ББК 32.973.26-018.2 Электронное издание на основе печатного издания: Разработка приложений Java EE 7 в NetBeans 8 / Д. Хеффельфингер ; пер. с англ. А.Н. Киселёва. — Москва : ДМК Пресс, 2016. — 348 с. — ISBN 978-5-97060- 329-1. — Текст : непосредственный. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации. ISBN 978-5-89818-607-4 © 2015 Packt Publishing © Оформление, перевод на русский язык, МК Пресс, 2016
Оглавление Об авторе ........................................................ 10 О рецензентах.................................................. 11 предисловие ................................................... 14 Вопросы, освещаемые в книге .............................................................. 14 Что нужно для чтения этой книги ........................................................... 16 Для кого эта книга ................................................................................. 16 Соглашения .......................................................................................... 16 Отзывы и пожелания ............................................................................. 17 Скачивание исходного кода примеров .................................................. 17 Список опечаток ................................................................................... 18 Нарушение авторских прав ................................................................... 18 Вопросы ............................................................................................... 18 Глава 1. Знакомство с NetBeans ...................................... 19 Введение ...................................................................................... 19 Получение NetBeans ...................................................................... 20 Установка NetBeans....................................................................... 23 Microsoft Windows.................................................................................. 24 Mac OSx ................................................................................................ 24 Linux ..................................................................................................... 24 Другие платформы ............................................................................... 25 Процедура установки ............................................................................ 25 Первый запуск NetBeans ............................................................... 31 Настройка NetBeans для разработки Java EE-приложений ............ 32 Интегрирование NetBeans со сторонним сервером приложений .......... 33 Интегрирование NetBeans с СУРБД стороннего производителя ........... 36 Развертывание нашего первого приложения................................. 40 Подсказки NetBeans для эффективной разработки ....................... 43 Автозавершение кода ........................................................................... 43 Шаблоны кода ...................................................................................... 47 Клавиши быстрого вызова .................................................................... 49 Изучение визуальных индикаторов NetBeans ........................................ 53 Функция ускорения разработки HTML5 ......................................... 54 Резюме ......................................................................................... 59
Оглавление Глава 2. Разработка веб-приложений с использованием JavaServer Faces 2.2 ......................................... 60 Введение в JavaServer Faces ......................................................... 60 Разработка нашего первого приложения JSF ................................ 61 Создание нового проекта JSF ............................................................... 61 Добавление в страницу возможности ввода данных .............................. 66 Создание именованного компонента CDI .............................................. 73 Реализация страницы подтверждения .................................................. 77 Запуск приложения ............................................................................... 78 Проверка допустимости в JSF ............................................................... 80 Шаблоны фейслетов ..................................................................... 83 Добавление шаблона фейслетов .......................................................... 84 Использование шаблона ....................................................................... 86 Контракты библиотек ресурсов ..................................................... 90 Составные компоненты ................................................................. 96 Потоки Faces Flow ....................................................................... 101 Поддержка HTML5 ....................................................................... 108 HTML5-подобная разметка ................................................................. 108 Сквозные атрибуты ............................................................................. 111 Резюме ....................................................................................... 113 Глава 3. Библиотеки компонентов JSF ........................... 114 Использование компонентов PrimeFaces в JSF-приложениях ...... 114 Использование компонентов ICEfaces в JSF-приложениях .......... 120 Использование компонентов RichFaces в JSF-приложениях ........ 128 Резюме ....................................................................................... 133 Глава 4. Взаимодействие с базами данных через Java Persistence API ........................................ 135 Создание первой сущности JPA .................................................. 136 Добавление сохраняемых полей в сущность ....................................... 145 Создание объекта доступа к данным ................................................... 147 Автоматическое создание сущностей JPA ................................... 153 Именованные запросы и JPQL ............................................................ 162 Проверка допустимости со стороны компонентов .............................. 164 Отношения сущностей ........................................................................ 164 Создание приложений JSF из сущностей JPA .............................. 172 Резюме ....................................................................................... 179
Оглавление Глава 5. Реализация уровня бизнес-логики на сеансовых компонентах EJB ............................................ 180 Введение в сеансовые компоненты ............................................. 181 Создание сеансового компонента в NetBeans ............................. 181 Доступ к компонентам из клиента ............................................... 193 Запуск клиента ................................................................................... 196 Управление транзакциями в сеансовых компонентах ................. 197 Реализация аспектно-ориентированного программирования с помощью интерцепторов .......................................................... 199 Реализация класса интерцептора ....................................................... 200 Декорирование компонентов EJB аннотацией @Interceptors ............... 202 Служба таймеров EJB .................................................................. 203 Автоматическое создание сеансовых компонентов из сущностей JPA ........................................................................ 206 Резюме ....................................................................................... 211 Глава 6. Контексты и внедрение зависимостей ............... 213 Введение в CDI ............................................................................ 213 Квалификаторы ........................................................................... 219 Стереотипы ................................................................................. 225 Типы привязки интерцепторов .................................................... 227 Собственные контексты .............................................................. 232 Резюме ....................................................................................... 234 Глава 7. Обмен сообщениями с применением JMS и компонентов, управляемых сообщениями ........ 236 Введение в JMS .......................................................................... 236 Создание ресурсов JMS из NetBeans .......................................... 237 Реализация продюсера сообщений JMS ..................................... 243 Обработка сообщений компонентами, управляемыми сообщениями .............................................................................. 250 Наблюдение за приложением в действии ........................................... 254 Резюме ....................................................................................... 256 Глава 8. прикладной интерфейс JSON Processing ............ 257
Оглавление Объектная модель JSON-P .......................................................... 257 Создание данных в формате JSON с использованием объектной модели JSON-P .................................................................................. 258 Пример ............................................................................................... 261 Парсинг данных в формате JSON с использованием объектной модели JSON-P .............................................................................................. 265 Потоковая модель JSON-P .......................................................... 268 Создание данных JSON с применением потоковой модели JSON-P .... 269 Парсинг данных JSON с применением потоковой модели JSON-P ...... 271 Резюме ....................................................................................... 274 Глава 9. прикладной интерфейс WebSocket .................... 275 Исследование приемов использования веб-сокетов на типовых примерах................................................................... 275 Опробование примера приложения Echo ............................................ 277 Программный код на Java .................................................................. 278 Программный код на JavaScript .......................................................... 279 Создание собственных приложений с веб-сокетами ................... 281 Создание пользовательского интерфейса .......................................... 283 Создание серверной конечной точки веб-сокета ................................ 286 Реализация поддержки веб-сокетов на стороне клиента .................... 288 Резюме ....................................................................................... 291 Глава 10. Веб-службы RESTful на основе JAX-RS ............... 293 Создание веб-службы RESTful на основе существующей базы данных ........................................................................................ 294 Анализ сгенерированного кода ........................................................... 296 Тестирование веб-службы RESTful .............................................. 300 Создание Java-клиента веб-службы RESTful ................................ 307 Создание JavaScript-клиента веб-службы RESTful ....................... 313 Резюме ....................................................................................... 317 Глава 11. Веб-службы SOAP на основе JAX-WS .................. 318 Введение в веб-службы ............................................................... 318 Создание простой веб-службы .................................................... 319 Тестирование веб-службы .................................................................. 325 Создание клиента для веб-службы ...................................................... 327 Экспортирование компонентов EJB в виде веб-служб ................. 332 Реализация новых веб-служб в виде EJB ............................................. 332 Экспортирование существующих EJB в виде веб-служб ..................... 335
Оглавление Создание веб-службы из существующего файла WSDL ....................... 338 Резюме ....................................................................................... 339 предметный указатель .................................... 341
Об автОре Дэвид Хеффельфингер (David R. Heffelfinger) – технический директор Ensode Technology LLC – консалтинговой компании, специализирующейся на разработке программного обеспечения и расположенной в районе большого Вашингтона, округ Колумбия. Дэвид – профессиональный архитектор, проектировщик и разработчик программного обеспечения с 1995 года и использует Java в качестве основного языка программирования с 1996 года. Работал во многих крупных проектах для ряда клиентов, в числе которых департамент США по Национальной безопасности, Freddie Mac, Fannie Mae и Министерство обороны США. Имеет степень магистра в области разработки программного обеспечения Южного методического университета. Также является главным редактором Ensode.net (http://www. ensode.net), вебсайта, посвященного Java, Linux и другим технологиям. Часто выступает на конференциях Javaразработчиков, таких как JavaOne. Вы можете следовать за Дэвидом в Твиттере, его учетная запись: @ensode.
О рецензентах Саурабх Чхаджед (Saurabh Chhajed) – обладатель сертификатов «Cloudera Certified Developer for Apache Hadoop» и «Certified Java/ J2EE Programmer» с 5летним опытом профессиональной разработки корпоративных приложений с применением новейших фреймворков, инструментов и шаблонов проектирования. Имеет большой опыт применения методологий гибкой разработки и активно продвигает новые технологии, такие как NoSQL и приемы обработки Больших Данных. Саурабх оказывал помощь некоторым крупным кампаниям из США в создании их корпоративных систем, что называется «с нуля». В свободное от работы время любит путешествовать и обожает делиться опытом в своем блоге (http://saurzcode.in). Халиль Каракосе (Halil Karaköse) – независимый разработчик программного обеспечения. В 2005 году закончил университет Işık University в Турции с квалификацией инженера по вычислительной технике. Десять лет работал в индустрии телекоммуникаций, в таких компаниях, как Turkcell и Ericsson. В 2014 оставил работу в Ericsson и основал собственную консалтинговую компанию KODFARKI (http:// kodfarki.com). Основное свое внимание он уделяет разработке программ на Java, с применением Java EE, Spring и Primefaces. Также любит проводить практические занятия по программированию на Java. Всегда проявлял большой интерес к Javaинструментам, повышающим скорость разработки, таким как NetBeans и IntelliJ IDEA. В свободное время занимается бегом, лыжами, иногда любит сразиться в «Pro Evolution Soccer». Марио Перес Мадуэно (Mario Pérez Madueño) родился в 1975 году в Турине, а сейчас живет в Барселоне. В 2010 году закончил Открытый университет Каталонии (Open University of Catalonia, UOC) с квали
фикацией инженера по вычислительной технике. Марио – большой энтузиаст применения технологий Java SE, ME и EE, и уже много лет участвует в программе «приемочных испытаний сообществом» NetBeans (NetBeans Community Acceptance Testing program, NetCAT). Также был техническим рецензентом книг «Java EE 5 Development with NetBeans 6» и «Building SOAbased Composite Applications Using NetBeans IDE 6» (обе выпущены издательством Packt Publishing). Я хотел бы выразить благодарность моей жене Марии (María) за ее безоговорочную помощь и поддержку всех моих начинаний, а также Мартина (Martín) и Матиаса (Matías), дающих мне силы идти вперед. Дэвид Салтер (David Salter) – архитектор и разработчик корпоративного программного обеспечения, занимающийся этой работой с 1991 года. Истоки его отношений с Java восходят к самому началу развития этого языка, когда он использовал Java 1.0 для создания настольных приложений и апплетов для интерактивных вебсайтов. Дэвид занимается разработкой корпоративных приложений на Java с использованием технологии Java EE (и J2EE), а также с применением открытых решений, начиная с 2001 года. Его перу принадлежат книги «NetBeans IDE 8 Cookbook» и «Seam 2.x Web Development» (обе выпущены издательством Packt Publishing). Также является соавтором книги «Building SOABased Composite Application Using NetBeans IDE 6», Packt Publishing. Хочу поблагодарить мою семью за поддержку. Особое спасибо моей жене – люблю тебя. Манжит Сингх Сони (Manjeet Singh Sawhney) – в настоящее время работает в крупной консалтинговой компании в Лондоне на должности главного консультанта по организации корпоративных данных. Прежде работал в разных крупных организациях, занимаясь разработкой программного обеспечения, оказанием помощи в выработке технических решений и организации корпоративных данных. Манжит имеет опыт использования множества языков программирования, но отдает предпочтение языку Java. Обучаясь в аспирантуре, он О рецензентах
также работал репетитором в одном из 100 лучших университетов в мире, где преподавал Java студентам начальных курсов и привлекался к приему экзаменов и оценке дипломных проектов. Свой профессиональный опыт Манжит приобрел в работе над несколькими ответственными проектами ПО для обслуживания клиентов в сфере финансов, телекоммуникационных услуг, розничной торговли и в государственных учреждениях. Я очень благодарен своим родителям; моей жене Джаспал (Jaspal); моему сыну Кохинуру (Kohinoor); и моей дочери Прабхнур (Prabhnoor), за их поддержку и терпение, когда я, занимаясь рецензированием этой книги, оторвал от семьи несколько моих вечеров и выходных. О рецензентах
предислОвие Java EE 7 является последней версией спецификации Java EE, в которую добавлено несколько новых возможностей для упрощения разработки корпоративных приложений. В эту последнюю версию Java EE были включены новые версии существующих API Java EE. Так, например, в JSF 2.2 значительно улучшена поддержка создания диалоговых мастеров с применением FaceFlows и добавлена поддержка HTML5. В NetBeans появилась поддержка новых особенностей JPA 2.1, таких как Bean Validation и многих других. Сеансовые компоненты EJB теперь могут автоматически генерироваться средой NetBeans, что существенно упрощает использование возможностей EJB, таких как транзакции и параллельное выполнение. Дополнительные особенности CDI, такие как квалификаторы, стереотипы и другие теперь легко могут быть задействованы с помощью мастеров NetBeans. Значительно упрощена работа с JMS 2.0, что позволяет легко и быстро разрабатывать приложения, обменивающиеся сообщениями. Java EE включает новый Java API JSON Processing (JSONP), что упрощает обработку данных в формате JSON. Кроме того, в состав NetBeans была включена поддержка некоторых особенностей, позволяющих легко и просто разрабатывать вебслужбы RESTful и SOAP. В этой книге мы исследуем все возможности NetBeans, которые предназначены для разработки корпоративных приложений Java EE 7. Вопросы, освещаемые в книге Глава 1, «Знакомство с NetBeans», представляет введение в NetBeans, а также знакомит с подсказками, экономящими время, и приемами, которые позволяют более эффективно разрабатывать приложения Java. Глава 2, «Разработка вебприложений с использованием JavaServer Faces 2.2», объясняет, как с помощью NetBeans можно облегчить разработку вебприложений, использующих преимущества фреймворка JavaServer Faces 2.2.
Предисловие Глава 3, «Библиотека компонентов JSF», показывает, насколько просто с помощью NetBeans создавать JSFприложения с применением популярных библиотек компонентов JSF, таких как PrimeFaces, RichFaces и ICEfaces. Глава 4, «Взаимодействие с базами данных через Java Persistence API», объясняет, как с помощью NetBeans упрощается разработка приложений, использующих возможности Java Persistence API (JPA), включая автоматическое создание сущностей JPA из существующих схем баз данных. В этой главе также объясняется, как сгенерировать завершенное вебприложение из существующей схемы базы данных всего несколькими щелчками мыши. Глава 5, «Реализация уровня бизнеслогики на сеансовых компонентах EJB», наглядно демонстрирует, насколько NetBeans упрощает разработку сеансовых компонентов EJB 3.1. Глава 6, «Контексты и внедрение зависимостей», показывает, как новый CDI API, введенный в Java EE 6, упрощает интегрирование различных уровней корпоративного приложения. Глава 7, «Обмен сообщениями с применением JMS и компонентов, управляемых сообщениями», посвящена технологиям обмена сообщениями Java EE, таким как Java Message Service (JMS) и MessageDriven Beans (MDB), демонстрируя функциональность NetBeans, которая упрощает разработку приложений, использующих возможности этих API. Глава 8, «Прикладной интерфейс JSON Processing», рассказывает, как обрабатывать данные в формате JSON с применением нового прикладного интерфейса JSONP. Глава 9, «Прикладной интерфейс WebSocket», рассказывает, как использовать новый прикладной интерфейс Java к вебсокетам (WebSocket) для создания вебприложений, поддерживающих полноценные двусторонние взаимодействия между клиентом и сервером. Глава 10, «Вебслужбы RESTful на основе JAXRS», рассматривает создание вебслужб RESTful на основе JAXRS, попутно демонстрируя, как NetBeans может автоматически генерировать вебслужбы RESTful, а также клиентские RESTfulприложения на Java и JavaScript. Глава 11, «Вебслужбы SOAP на основе JAXWS», объясняет, как с помощью NetBeans можно облегчить разработку вебслужб SOAP с применением прикладного интерфейса Java API for XML (JAXWS).
Доступ онлайн
В корзину