Главная » 2015»Август»19 » Программирование для Web. Библиотека профессионала
02:20
Программирование для Web. Библиотека профессионала
Программирование для Web. Библиотека профессионала — В данной книге читатель найдет все необходимые сведения, позволяющие создавать Web-страницы, включать в них исполняемый код, а также реализовать программы, выполняющиеся на стороне сервера. В ней достаточно полно описаны языковые конструкции, соответствующие спецификации HTML 4.0, приведены подробные сведения о языке Java, рассматривается создание сервлетов nJSP, обработка XML-документов построение программ, выполняющихся на стороне клиента и многие другие вопросы.
Название: Программирование для Web. Библиотека профессионала Автор: Марти Холл, Лэрри Браун Издательство: Вильямс Год: 2002 Страниц: 1264 Формат: PDF Размер: 36,29 МБ ISBN: 5-8459-0237-1 Качество: Отличное
Содержание:
Введение Часть 1. Язык HTML Глава 1. Создание web- страниц с помощью HTML 1.1. HyperText Markup Language 1.2. HTML 4.0 и другие стандарты HTML 1.3. Порядок публикации документа в Web Создание документа Размещение документа в Web Проверка документа 1.4. Структура HTML-документа Шаблон HTML-документа Декларация DOCTYPE 1.5. Элемент HEAD - высокоуровневая информация Обязательный элемент в составе HEAD Необязательные элементы в составе HEAD 1.6. BODY - основная часть документа Глава 2. Элементы блокового уровня HTML 2.1. Заголовки 2.2. Основные элементы Основной абзац Абзацы с сохранением пробелов Цитирование с отступом Адрес 2.3. Нумерованные, маркированные списки Нумерованные списки Маркированные списки Списки определений 2.4. Таблицы Структура таблицы Определение строк таблицы Ячейки заголовков и ячейки данных Группировка содержимого таблицы 2.5. Формы 2.6. Прочие элементы блокового уровня Глава 3. Элементы текстового уровня HTML 3.1. Физические стили отображения символов 3.2. Логические стили отображения символов 3.3. Построение гипертекстовых ссылок 3.4. Встроенные изображения Анимационные GIF-файлы Элемент IMG 3.5. Карты изображений на стороне клиента 3.6. Включение объектов в документ Встроенные аплеты Встроенные аудио- и видеофрагменты, а также объекты в других форматах Управляющие элементы ActiveX Бегущая строка 3.7. Управление переводом строк Глава 4. Фреймы 4.1. Шаблон документа с фреймами 4.2. Разбиение окна броузера на фреймы 4.3. Определение содержимого фреймов Примеры 4.4. Определение фрейма для отображения документа Зарезервированные имена фреймов 4.5. Разрешение типичных проблем Создание закладок для фреймов Вывод фреймов на печать Одновременное обновление нескольких фреймов Запрет вывода документа в составе фрейма Создание пустого фрейма 4.6. Встроенные фреймы Глава 5. Каскадные листы стилей 5.1. Правила стилей 5.2. Внешние и локальные листы стилей Внешние листы стилей Элемент STYLE и листы стилей JavaScript Встроенные правила стилей 5.3. Селекторы HTML-элементы Классы, определяемые пользователем Идентификаторы, определяемые пользователем Псевдоклассы якоря 5.4. Предшествование правил 5.5. Свойства шрифтов 5.6. Свойства для определения фона и переднего плана 5.7. Текстовые свойства 5.8. Свойства блоков с обрамлением Границы Обрамление Заполненная область Типы отображения блока 5.9. Изображения и плавающие элементы 5.10. Свойства списков 5.11. Стандартные единицы для определения значений свойств Единицы длины Цвет 5.12. Слои Определение слоев с помощью элементов LAYER и ILAYER Работа со слоями посредством листов стилей 5.13. Резюме Часть II. Программирование на языке Java Глава 6. Общие сведения о языке Java 6.1. Возможности Java Средства сетевого взаимодействия и работа в Web Кроссплатформенная поддержка Java Простота Java Объектно-ориентированные средства Java Стандартные библиотеки Java 6.2. Java: мифы и реальность Java предназначен исключительно для Web Кроссплатформенная поддержка Java Простота Java Java - объектно-ориентированный язык (для тех кто придерживается соответствующего подхода) Java - язык для разработки различных типов программ 6.3. Версии Java Какой версии отдать предпочтение Основные сведения о Java 6.4. Начинаем работу Установка Java Инсталляция броузера с поддержкой Java Доступ к документации по Java API Установка интегрированного пакета разработки (необязательное действие) Создание и запуск Java-программы 6.5. Несколько простых Java-программ Приложение Hello, World Параметры командной строки Аплет Hello, World Параметры, передаваемые аплету Глава 7. Объектно-ориентированное программирование на Java 7.1. Переменные экземпляра 7.2. Методы 7.3. Конструкторы и ссылка this Статические инициализационные блоки 7.4. Деструкторы 7.5. Переопределение 7.6. Подготовка классов к повторному использованию 7.7. Javadoc Дескрипторы javadoc Параметры командной строки javadoc 7.8. Наследование 7.9. Интерфейсы и абстрактные классы 7.10. Пакеты, CLASSPATH и JAR-архивы Переменная окружения CLASSPATH 7.11. Модификаторы Модификаторы области видимости Прочие модификаторы Глава 8. Синтаксис Java 8.1. Синтаксические правила 8.2. Простые типы Преобразование простых типов 8.3. Операторы, условные операторы и циклы Арифметические операторы Условные операторы Циклы 8.4. Класс Math Константы Методы общего назначения Тригонометрические методы Biglnteger и BigDecimal 8.5. Ввод и вывод Вывод в стандартный выходной поток Вывод в стандартный поток ошибок Чтение из стандартного входного потока 8.6. Выполнение программ, отличных от Java 8.7. Ссылки Соглашения по передаче параметров Оператор instanceof 8.8. Работа со строками Методы класса String Конструкторы 8.9. Массивы Создание массива в два этапа Создание массива в один этап Многомерные массивы 8.10. Векторы Конструкторы Методы 8.11. Пример создания простого бинарного дерева 8.12. Исключения Обработка исключения Использование нескольких блоков catch Выражение finally Использование ключевого слова throws и явная генерация исключений Необрабатываемые исключения Глава 9. Аплеты и основные действия с графикой 9.1. Что такое аплеты 9.2. Создание аплета Шаблон аплета Шаблон HTML-файла 9.3. Пример аплета Автоматическое обновление информации в окне аплета Повторная загрузка аплета в процессе разработки Отображение данных, выведенных в стандартный выходной поток 9.4. Жизненный цикл аплета 9.5. Прочие методы аплета 9.6. Элемент APPLET 9.7. Чтение параметров Пример чтения параметров аплетом 9.8. HTML-элемент OBJECT 9.9. JaVa Plug-In 9.10. Графические приложения 9.11. Графические операции Операции рисования Работа с цветом и со шрифтом Режимы рисования Координаты и области отсечения 9.12. Вывод изображений Загрузка аплетом изображений, заданных с помощью относительного URL Загрузка аплетом изображений, заданных с помощью абсолютного URL Загрузка изображений приложениями 9.13. Предварительная загрузка изображений 9. J4. Управление загрузкой изображений 9.15. Резюме Глава 10. Java 2d: графика в Java 10.1. Общие сведения о Java 2D Методы класса Graphics2D 10.2. Отображение форм Классы Shape 10.3. Стили рисования Классы рисования Заполнение контура изображением 10.4. Рисование прозрачных форм 10.5. Использование локальных шрифтов 10.6. Стили пера Атрибуты пера 10.7. Преобразование координат Нелинейное масштабирование 10.8. Прочие возможности Java 2D Глава 11. События, связанные с мышью и клавиатурой 11.1. Поддержка событий Отображение кругов 11.2. Поддержка событий путем 11.3. Обработка событий с помощью 11.4. Обработка событий с помощью 11.5. Стандартные обработчики событий 11.6. Низкоуровневая обработка событий 11.7. Поле редактирования с проверкой орфографии 11.8. «Чертежная доска» Модифицированный вариант «чертежной доски» 11.9. Резюме Глава 12. Диспетчеры компоновки 12. 1. Диспетчер компоновки FlowLayout Конструкторы FlowLayout Методы FlowLayout 12.2. Диспетчер компоновки BorderLayout Конструкторы BorderLayout Методы BorderLayout 12.3. Диспетчер компоновки GridLayout Конструкторы GridLayout Методы GridLayout 12.4. Диспетчер компоновки CardLayout Конструкторы CardLayout Методы CardLayout 12.5. Диспетчер компоновки GridBagLayout Объект GridBagConstraints Пример использования GridBagLayout Конструктор GridBagLayout Методы GridBagLayout 12.6. Диспетчер компоновки BoxLayout Конструктор BoxLayout Методы BoxLayout 12.7. Размещение компонентов вручную 12.8. Эффективное использование диспетчеров компоновки Использование вложенных контейнеров Отключение диспетчеров компоновки для некоторых контейнеров Резервирование пустого пространства вокруг компонентов Глава 13. Компоненты awt 13.1. Класс Canvas Создание и использование объектов Canvas Пример компонента, созданного с помощью Canvas 13.2. Класс Component 13.3. «Легковесные» компоненты в Java 13.4. Класс Panel Диспетчер компоновки по умолчанию: FlowLayout Создание и использование панелей Пример использования Panel для группировки компонентов 13.5. Класс Container 13.6. Класс Applet 13.7. Класс ScrollPane Создание и использование ScrollPane Пример объекта ScrollPane, включающего панель которая содержит 100 кнопок 13.8. Класс Frame Диспетчер компоновки по умолчанию: BorderLayout Создание и использование объектов Frame Примеры использования объектов Frame Закрытие окон Frame Меню Методы класса Frame 13.9. Сериализация окон Запись окна на диск Чтение окна с диска Пример окна Frame, допускающего сохранение на диске 13.10. Класс Dialog Создание и использование окна Dialog Пример диалогового окна: подтверждение завершения программы 13.11. Класс FileDialog Пример отобрг1жения файлов с помощью компонента TextAiea 13.12. Класс Window Диспетчер компоновки по умолчанию: BorderLayout Создание и использование объекта Window 13.13. Обработка событий управляющих элементов Децентрализованная обработка событий Централизованная обработка событий 13.14. Класс Button Конструкторы Пример аплета с тремя кнопками Методы класса Button Поддержка действий с кнопками 13.15. Класс Checkbox Конструкторы Пример создания флгьжков опций Методы Checkbox Поддержка событий Checkbox 13.16. Переключатели опций Конструкторы Пример использования флажков и переключателей опций Методы классов CheckboxGroup и Checkbox Поддержка событий CheckboxGroup 13.17. Элемент Choice Конструктор Пример раскрывающегося списка Методы класса Choice Поддержка событий, связанных с объектом Choice 13.18. Элемент List Конструкторы Примеры элементов List Методы класса List Поддержка событий элемента List 13.19. Класс TextField Конструкторы Пример создания полей редактирования Методы TextField Методы класса TextComponent Обработка событий, связанных с элементом TextField 13.20. Класс TextArea Конструкторы Примеры текстовых областей Методы классаTextAiea Поддержка событий TextArea 13.21. Класс Label Конструкторы Пример использования объектов Label Методы класса Label Поддержка событий Label 13.22. Полосы прокрутки и линейные регуляторы Конструкторы Примеры линейных регуляторов Методы Scrollbar Поддержка событий Scrollbar 13.23. Контекстные меню Конструкторы Пример использования раскрывающегося меню Методы класса PopupMenu Поддержка событий, связанных с раскрывающимися меню Глава 14. Основы Swing 14.1. Общие сведения о Swing Различия между Swing и AWT 14.2. Компонент JApplet 14.3. Компонент JFrame 14.4. Компонент JLabel Новые средства: изображения, рамки и HTML-содержимое Конструкторы JLabel Методы JLabel 14.5. Компонент JButton Новые возможности: пиктограммы, выравнивание и «горячие клавиши» HTML-код для создания надписей на кнопках Конструкторы JButton Методы классов JButton и AbstractButton 14.6. Компонент JPanel Конструкторы JPanel Новая возможность: обрамление Методы класса BorderFactory 14.7. Компонент JSlider Новые возможности: разметка шкалы Конструкторы JSlider Методы класса JSlider 14.8. Компонент JColorChooser Конструкторы Методы класса JColorChooser 14.9. Внутренние окна Конструктор JInternalFrame Методы класса JInternalFrame 14.10. КомпонентJOptionPane Методы класса JOptionPane 14.11. Компонент JToolBar Конструкторы JToolBar Методы JToolBar 14.12. Компонент JEditorPane Переход по гипертекстовым ссылкам Конструкторы JEditorPane Методы JEditorPane Реализация простого Web-броузера Поддержка HTML и JavaHelp 14.13. Простые Swing-компоненты Компонент JCheckBox Компонент JRadioButton Компонент JTextField Компонент JTextArea Компонент JFileChooser Глава 15. Расширенные средства Swing 15.1. Использование произвольных моделей данных и средств просмотра 15.2. Компонент JList JList как фиксированный набор пунктов Компонент JList с изменяемым набором пунктов Использование JList с произвольной моделью данных JList и средства визуализации, определяемые разработчиком 15.3. JTree Простой объект JTree Методы класса JTree Обработка событий JTree 15.4. JTable Простой способ создания JTable Модели данных, используемые компонентом JTable Визуализация ячеек таблицы Обработка событий таблицы 15.5. Вывод на печать Swing-компонентов Основы вывода на печать Двойная буферизация и вывод на печать Универсальная программа печати Вывод на печать в JDK 15.6. Потоки Swing Методы класса SwingUtilities Глава 16. Использование потоков 16.1. Запуск потоков Выполнение действий в отдельном объекте Thread Выполнение действий в классе, реализующем интерфейс Runnable 16.2. Возникновение «гонок» 16.3. Синхронизация Синхронизация фрагмента кода Синхронизация метода Ошибки, допускаемые при использовании синхронизации 16.4. Создание многопотоковых методов 16.5. Методы класса Thread Конструкторы Константы Методы Остановка выполнения потока 16.6. Группы потоков Конструкторы Методы 16.7. Многопотоковая графика и двойная буферизация Вывод графики в теле метода paint Реализация динамической части изображения в виде отдельного компонента Рисование за пределами метода paint Переопределение метода update и использование метода paint для инкрементного рисования Использование двойной буферизации 16.8. Анимационные изображения 16.9. Таймеры Конструктор Методы класса Timer 16.10. Резюме Глава 17. Сетевое программирование 17.1. Реализация клиента Пример универсального сетевого клиента 17.2. Разбор строк с помощью класса StringTokenizer Класс StringTokenizer Конструкторы Методы Пример интерактивной программы разбора 17.3. Пример клиента, предназначенного 17.4. Пример клиент-программы Класс, предназначенный для получения ресурса с указанного узла Класс, предназначенный для получения ресурса по заданному URL Выходные данные UrlRetriever 17.5. Класс URL Получение ресурса по указанному URL Методы класса URL 17.6. WebClient 17.7. Реализация сервера Пример универсального сервера Взаимодействие NetworkClient и NetworkSei'ver 17.8. Пример простого HTTP-сервера Сервер, выполняющийся в многопотоковом режиме 17.9. RMI: Remote Method Invocation Создание RMTпpилoжeния Простой пример использования RMI Сервер, выполняющий численное интегрирование Четыре класса, необходимых для реализации примера Компиляция и запуск примера Конфигурация средств RMI для использования в корпоративной системе Компиляция и запуск примера для использования в корпоративной системе Пример RMI-аплета Часть III. Программы, выполняющиеся на стороне сервера Глава 18. HTML-формы 18.1. Передача данных с помощью HTML-форм 18.2. Элемент FORM 18.3. Управляющие элементы для обработки текста Поля редактирования Поле ввода пароля Текстовые области 18.4. Кнопки Кнопка Submit Кнопка Reset Кнопки JavaScript 18.5. Флажки и переключатели опций Флажки опций Переключатели опций 18.6. Раскрывающиеся списки и окна списков 18.7. Управляющий элемент 18.8. Карты изображений на стороне сервера IMAGE - стандартные карты изображений на стороне сервера ISMAP - альтернативные карты изображений на стороне сервера 18.9. Скрытые поля 18.10. Группировка интерфейсных элементов 18.11. Порядок выбора элементов Глава 19. Java на стороне сервера: сервлеты 19.1. Преимущества сервлетов Эффективность Простота использования Богатые возможности Переносимость Защита Низкая стоимость 19.2. Инсталляция и настройка сервера Программное обеспечение для поддержки сервлетов и JSP Документация, необходимая для разработки сервлетов и JSP Информация о расположении файлов классов Оформление классов в виде пакета Настройка сервера Компиляция и установка сервлетов Обращения к сервлетам 19.3. Базовая структура сервлета Сервлет, генерирующий текстовое сообщение Сервлет, генерирующий HTML-код Простые утилиты для создания HTML-кода 19.4. Жизненный цикл сервлета Метод init Метод service Методы doGet, doPost и doXxx Интерфейс SingleThreadModel Метод destroy 19.5. Пример использования инициализированных параметров 19.6. Запрос клиента: данные формы Получение данных формы CGI-программами Получение данных формы сервлетами Пример получения значений трех параметров Фильтрация данных, полученных в составе запроса 19.7. Запрос клиента: заголовок HTTP-запроса Чтение полей заголовка сервлетами Создание таблицы, содержащей полученные поля заголовка Поля заголовка, определенные в протоколе HTTP Передача сжатых Web-страниц 19.8. Аналоги стандартных CGI-переменных 19.9. Ответ сервера: коды состояния Установка кода состояния Коды состояния HTTP Интерфейс к различным поисковым серверам 19.10. Ответ сервлета: поля заголовка Установка полей заголовка Поля заголовка в составе ответа сервера Постоянное состояние сервлета и автоматическая перезагрузка Web-страниц 19.11. Cookie Преимущества использования cookie Проблемы, возникающие при использовании cookie Средства API, предназначенные для работы с cookie Примеры установки и чтения cookie Вспомогательные средства для работы с cookie Создание cookie с большим временем жизни 19.12. Поддержка сеанса Необходимость поддержки сеанса Модификация URL API поддержки сеанса Завершение сеанса Сервлет, реализующий счетчик обращений клиента Глава 20. JavaServer Pages 20.1. Общие сведения oJSP 20.2. Преимущества JSP Преимущества JSP перед ASP и ColdFusion Преимущества JSP перед РНР Преимущества JSP перед сервлетами Преимущества JSP перед SSI Преимущества JSP перед JavaScript 20.3. Элементы сценариев JSP Выражения Скриптлеты Декларации Предопределенные переменные 20.4. Директива page Атрибут import Атрибут сontentType Атрибут isThreadSafe Атрибут session Атрибут buffer Атрибут autoflush Атрибут extends Атрибут info Атрибут errorPage Атрибут isErrorPage Атрибут language XML-представление директив 20.5. Включение файлов и аплетов в состав JSP-документов Директива include: включение файлов на этапе преобразования документа Включение файлов в момент запроса Включение аплетов, использующих Java Plug-In Элемент jsp: fallback 20.6. Использование JavaBeans с JSP Использование JavaBeans Пример класса StringBean Установка свойств beans Совместное использование компонентов bean 20.7. Определение новых JSP-дескрипторов Компоненты, предназначенные для создания библиотеки дескрипторов Определение простого дескриптора Поддержка атрибутов дескриптора Поддержка тела дескриптора Необязательные данные в составе дескриптора Обработка тела дескриптора Многократная обработка тела дескриптора Использование вложенных дескрипторов 20.8. Интеграция сервлетов и JSP Перенаправление запросов Пример: интерактивный агент по обслуживанию туристов Перенаправление запросов JSP-документами Глава 21. Аплеты как интерфейс к программам на стороне сервера 21.1. Передача данных с использованием запроса GET 21.2. Интерфейс к нескольким поисковым серверам 21.3. Использование запроса GET Чтение двоичных и ASCII-данных Чтение сериализованных структур данных 21.4. Программа просмотра запросов 21.5. Использование запроса POST 21.6. Аплет, который передает данные методом POST 21.7. Взаимодействие без участия HTTP-сервера Глава 22. JDBC 22.1. Основные этапы работы с JDBC Загрузка драйвера Определение URL для соединения Установление соединения Создание объекта Statement Выполнение запроса Обработка результатов Закрытие соединения 22.2. Пример использования JDBC 22.3. Вспомогательные классы для работы с JDBC 22.4. Применение класса DatabaseUtilities 22.5. Интерактивная программа просмотра запросов Код Querly Vieweг 22.6. Заранее подготовленные выражения Глава 23. Обработка XML-документов 23.1. Разбор XML-документа посредством DOM Level Инсталляция и настройка Разбор 23.2. Пример использования DOM 23.3. Разбор XML-документов посредством SAX Инсталляция и настройка Разбор 23.4. Пример использования SAX: вывод общих сведений 23.5. Пример использования SAX: подсчет заказов на книги 23.6. Преобразование XML посредством XSLT Инсталляция и настройка Преобразование 23.7. Пример использования XSLT: редактор документов 23.8. Пример использования XSLT Часть IV. JavaScript Глава 24. JavaScript: динамически изменяющиеся Web-страницы 24.1. Динамическая генерация HTML-документов Обеспечение совместимости с различными броузерами 24.2. Обработка событий 24.3. Синтаксис JavaScript Динамическая поддержка типов Объявление функций Объекты и классы Массивы 24.4. Использование JavaScript при создании Web-страниц Определение размеров окна броузера Определение наличия дополнительных модулей 24.5. Использование JavaScript для изменения Динамическое изменение изображений Работа со слоями 24.6. Использование JavaScript для проверки HTML-форм Индивидуальная обработка элементов формы Проверка данных перед передачей на сервер 24.8. Использование JavaScript для работы с фреймами Отображение во фрейхме ресурса с заданным URL Получение фреймом фокуса ввода 24.9. Обращение к Java из JavaScript Непосредственный вызов методов Java Использование аплетов для выполнения операций в JavaScript-сценариях Управление аплетами из JavaScript-сценария 24.10. Доступ к средствам JavaScript из Java Определение цвета фона Web-страницы Аплет, проверяющий данные формы Методы классаJSObject Глава 25. Краткое руководство по JavaScript 25.1. Объект Array Конструкторы Свойства Методы Обработчики событий 25.2. Объект Button Свойства Методы Обработчики событий 25.3. Объект Checkbox Свойства Методы Обработчики событий 25.4. Объект Date Конструкторы Свойства Методы Обработчики событий 25.5. Объект Document Свойства Методы Обработчики событий 25.6. Объект Element Свойства Методы Обработчики событий 25.7. Объект FileUpload Свойства Методы Обработка событий 25.8. Объект Form Свойства Методы Обработчики событий 25.9. Объект Function Конструктор Свойства Методы Обработчики событий 25.10. Объект Hidden Свойства Методы Обработчики событий 25.11. Объект History Свойства Методы Обработчики событий 25.12. Объект Image Конструктор Свойства Методы Обработчики событий 25.13. Объект JavaObject 25.14. Объект JavaPackage 25.15. Объект Layer Конструкторы Свойства Методы Обработчики событий 25.16. Объект Link Свойства Методы Обработчики событий 25.17. Объект Location Свойства Методы Обработчики событий 25.18. Объект Math Свойства Методы Обработчики событий 25.19. Объект MimeType Свойства Методы Обработчики событий 25.20. Объект Navigator Свойства Методы Обработчики событий 25.21. Объект Number Конструкторы Свойства Методы Обработчики событий 25.22. Объект Object Конструкторы Свойства Методы Обработчики событий 25.23. Объект Option Конструкторы Свойства Методы Обработчики событий 25.24. Объект Password Свойства Методы Обработчики событий 25.25. Объект Plugin Свойства Методы Обработчики событий 25.26. Объект Radio Свойства Методы Обработчики событий 25.27. Объект RegExp Конструкторы Свойства Методы Обработчики событий Специальные символы в составе регулярных выражений 25.28. Объект Reset Свойства Методы Обработчики событий 25.29. Объект Screen Свойства Методы Обработчики событий 25.30. Объект Select Свойства Методы Обработчики событий 25.31. Объект String Конструктор Свойства Методы Обработчики событий 25.32. Объект Submit Свойства Методы Обработчики событий 25.33. Объект Text Свойства Методы Обработчики событий 25.34. Объект Textarea Свойства Методы Обработчики событий 25.35. Объект Window Свойства Методы Обработчики событий Предметный указатель