В пособии вводится понятие распределенных клиент-серверных приложений и рассматриваются способы их реализация с применением программирования сокетов, RMI, сервлетов и JSP на основе применения JavaSE (Java Standard Edition) и JavaEE (Java Enterprise Edition).
Подробное рассмотрение технологий сопровождается практическими примерами по реализации клиентских и серверных компонент распределенной вычислительной архитектуры. Для демонстрации применения распределенных технологий используется популярная открытая среда разработки IDE Eclipse и сервер приложений GlassFish.
Author(s): Дубаков А.А.
Publisher: НИУ ИТМО
Year: 2013
Language: Russian
Tags: Библиотека;Компьютерная литература;Java;
ВВЕДЕНИЕ .................................................................................................. 6
ВВЕДЕНИЕ В ПРОГРАММИРОВАНИЕ СЕТЕВЫХ СОКЕТОВ ..... 7
Основы сетевого взаимодействия ................................................. 7
Архитектура клиент/сервер .................................................................... 8
Протоколы .......................................................................................................... 9
IP адрес и порт.................................................................................................. 9
Сокеты ............................................................................................................... 11
Классы Java для сетевого программирования ............................ 11
Создание приложения с использованием UDP протокола14
Классы DatagramPacket и DatagramSocket ..................................... 15
Создание сервера UDP ............................................................................... 17
Создание клиента UDP ............................................................................. 20
Пример разработки приложений UDP в IDE Eclipse ................ 23
Вопросы для самопроверки ........................................................... 27
Создание сетевых приложений с использованием TCP .... 28
Идентификация методов классов Socket и ServerSocket ....... 28
Создание сервера TCP/IP ......................................................................... 30
Создание клиента TCP/IP........................................................................ 36
Разработка потокового взаимодействия в IDE Eclipse .......... 40
Вопросы для самопроверки ........................................................... 44
ВВЕДЕНИЕ В RMI .................................................................................. 44
Введение в распределенные приложения .................................... 44
Вызов удаленного метода ...................................................................... 46
Компоненты приложения RMI ............................................................. 47
Архитектура RMI .......................................................................................... 48
Транспортный уровень ............................................................................ 49
Пакеты RMI ..................................................................................................... 49
Этапы создания распределенного приложения ........................ 53
Создание удаленного интерфейса ..................................................... 53
Реализация удаленного интерфейса ................................................ 54
Создание сервера RMI ............................................................................... 55
Политика безопасности ........................................................................... 57
Создание клиента RMI .............................................................................. 60
Выполнение приложения RMI ............................................................. 61
Разработка RMI-приложения в среде IDE Eclipse ...................... 64
Вопросы для самопроверки ........................................................... 73
ТЕХНОЛОГИИ И АРХИТЕКТУРА JAVAEE ..................................... 74
Введение в сервлеты Java ............................................................... 77
Понятие сервлета ........................................................................................ 77
Технология Java Servlet ............................................................................ 77
Работа сервлетов ......................................................................................... 79
Иерархия классов сервлетов и методы жизненного цикла 80
Иерархия класса Servlet ........................................................................... 80
Методы жизненного цикла сервлета ............................................... 82
Создание сервлета ...................................................................................... 87
Программирование сервлета ............................................................... 87
Пример разработки сервлета ............................................................... 91
Servlet API и события жизненного цикла .............................. 103
Servlet API ...................................................................................................... 103
Пакет javax.servlet.http ........................................................................... 110
API жизненного цикла сервлета ...................................................... 117
Типы событий ............................................................................................ 118
Обработка событий жизненного цикла сервлета .................. 119
Слушатели сеанса HTTP ........................................................................ 122
Описание элементов дескриптора развертывания .............. 129
Управление сессиями servlet ....................................................... 130
Приемы управления сессией ............................................................. 130
Использование Cookies.......................................................................... 136
Обработка ошибок и исключений в сервлетах ........................ 149
Взаимодействие сервлетов ................................................................. 160
Вопросы для самопроверки ......................................................... 168
Введение в технологию JSP .......................................................... 169
Основные возможности JSP ................................................................ 169
Использование регулярных классов в JSP .................................. 175
Жизненный цикл JSP .............................................................................. 179
Кодирование элементов сценария JSP ......................................... 186
Неявные объекты JSP ............................................................................. 186
Действия JSP ................................................................................................ 188
Программирование JSP ......................................................................... 191
Классы JSP API ............................................................................................ 191
Этапы создания приложения JSP ..................................................... 193
Понятие и работа с JavaBeans ............................................................ 198
Введение в JSP Expression Language (EL) ..................................... 208
Введение в JSTL .......................................................................................... 218
Расширенный пример с использованием EL и JSTL .............. 229
Вопросы для самопроверки ......................................................... 242
ЗАКЛЮЧЕНИЕ...................................................................................... 244
ЛИТЕРАТУРА ........................................................................................245