- •Основные спецификации Java: se, ee, me. Состав ядра системы программирования Java.
- •Арифметические операторы (cpp, c#)
- •Целочисленные битовые операторы (cpp, c#)
- •Операторы отношения (cpp, c#)
- •Булевы логические операторы (cpp, с#)
- •Оболочки простых типов.
- •Сравнение строк.
- •Классы Java. Конструкторы, методы, наследование классов, управление доступом к методам и переменным класса, ключевые слова this и supper. Классы.
- •Переменные (instance variables).
- •Оператор new.
- •Объявление методов.
- •Конструкторы.
- •Пакеты классов, понятие иерархии пакетов, переменная окружения classpath, инструкции package и import. Jarархивы. Состав jar-архивов. Применение jar-архивов.
- •Интерфейсы Java: назначение, принцип применения.
- •Метод get
- •Метод post
- •Метод opinions
- •Метод put
- •Метод delete
- •Коды состояний
- •Informational (русск. Информационный)
- •Строка запроса выглядит так:
- •Стартовая строка ответа сервера имеет следующий формат:
- •Язык html. Основные теги. Структура html-страницы. Основные теги. Каскадные таблицы стилей.
- •Язык JavaScript. Стандарты языка JavaScript. Назначение языка. Основные возможности. Понятие dhtml.
- •Стандарт языка:
- •Возможности языка JavaScript:
- •Модель dom. Назначение модели dom. Уровни модели dom. Основные спецификации.
- •Сетевые службы. Примеры сетевых служб. Служба www (Web-сервер). Примеры реализации службы www.
- •Архитектура Web-приложений
- •Структура спецификации Java Platform Enterprise Edition. Web-технологии.
- •Технология Java Applets. Назначение. Основные возможности.
- •Спецификация Servlet. Назначение. Основные возможности.
- •Переопределение и переадресация запросов. Формирование get и post запросов в сервлете. Переопределение
- •Генерация запросов
- •Переадресация
- •Спецификация jsp. Назначение. Основные возможности. Директивы, теги (определение, выполнение, скриплеты), предопределенные объекты.
- •Директивы jsp.
- •Объявления jsp
- •Выражения jsp
- •Скриплеты jsp
- •Библиотека тегов. Назначение основные возможности. Структура jsp-страницы при применении библиотеки тегов.
- •Дескриптор библиотеки тегов
- •Применение библиотечных тегов
- •Основные модели web-приложений на основе технологий сервлетов и jsp.
- •Основные системные объекты (контекст, сессия, запрос, ответ). Назначение и жизненный цикл объектов. Контекст
- •Сеанс связи (сессия)
- •Дескриптор развертывания web-приложения. Параметры инициализации web-приложения: назначение, принципы применения.
- •Атрибуты системных объектов. Назначение. Принципы применения. Атрибуты контекста
- •Атрибуты запроса
- •Атрибуты сессии
- •Заголовки http-запросов и ответов. Назначение. Принципы применения. Заголовки запроса
- •Заголовки ответа
- •Фильтры (JavaFilter). Назначение. Принципы применения.
- •Слушатели (JavaEventListener). Назначение. Принципы применения.
- •Технология jdbc. СоставJdbc. Структура jdbcприложения. Типы jdbc-драйверов.
- •Технология jaas. Назначение. Основные возможности. Роли, пользователи и их взаимосвязь.
- •Структура web-клиентов серверов smtp и pop3.
- •HelomailrcptdatasendquiTи другие команды.
- •Структура web-приложения пересылающего файлы.
- •Пример 1. Описания параметра инициации в дескрипторе приложения
- •Пример 2. Получения значения параметра инициации
- •Пример 3. Класс, используемый для выбора списка файлов
- •Пример 4. Формирование списка файлов (ссылок) в jsp-странице
- •Пример 5. Функция пересылающая клиенту Word-файл
- •Методология Ajax. Структура Ajax-приложения, принципы разработки и применения.
- •Понятие Application Server. Наиболее известные реализации.
- •Примеры реализации
Технология jdbc. СоставJdbc. Структура jdbcприложения. Типы jdbc-драйверов.
Java Database Connectivity (JDBC)– это технология, применяемая для доступа приложений на языке Java к реляционным базам данных. Пользуясь интерфейсом JDBC java-приложения, могут выполнить SQL-запрос к СУБД, а также получить и обработать результат этого запроса. В самом первом приближении JDBC – это реализация интерфейса Microsoft ODBC, но для платформы Java.
Интерфейс JDBC реализован в виде двух пакетов java.sqlиjavax.sql.
Основная задача, решаемая JDBC – это организация интерфейса между компонентой web-приложения и сервером реляционной базы данных. Условно этот интерфейс можно разбить на две части: JDBC API и JDBC-драйвер.
JDBC API– это набор java-классов и интерфейсов, входящих в состав пакетовjava.sqlиjavax.sql, которыми оперирует разработчик приложения. Этот набор классов является стандартным и не зависит от типа sql-базы данных, с которой осуществляет взаимодействие приложение. Все приложения, использующие JDBC одинаковым способом выполняют sql-операции. JDBC API входит в состав спецификации Java Platform Standard Edition.
JDBC-драйвер – это программное средство, взаимодействующее с JDBC API стандартным образом и учитывающее специфику конкретной sql-базы данных. JDBCдрайвер входит в состав программного обеспечения сервера базы данных и как правило, разрабатывается, компаниями-производителями СУБД. Спецификация JDBC предусматривает четыре типа драйверов.
Первый тип jdbc-драйверов является мостом между JDBC API и драйвером ODBC. Второй тип драйверов только частично реализован на языке Java и является зависимым от платформы.
Третий тип драйверов полностью реализован на языке Java, но взаимодействует с сервером через клиентскую часть СУБД.
Четвертый тип драйверов тоже полностью реализован на языке Java и не требует никого посредника для связи с сервером базы данных (тонкий клиент). Обычно jdbc-драйвер представляет собой jar-файл.
Драйвер может работать в 2 режимах: толстый и тонкий клиент.
Толстый клиент требует установки клиентской части СУБД на клиентской машине. Через строку подключения, указываем имя и пароль.
Тонкий клиент требует знания всех параметров подключения: хост, порт, имя сервиса, имя БД, пользователь, пароль и т.д.
В JDBC входят несколько классов, с помощью которых можно передать строку SQL запроса, и получить ответ в виде объект класса Result. Можно вызывать процедуры и функции, который исполняются на стороне СУБД и принимать ответы.
Технология jaas. Назначение. Основные возможности. Роли, пользователи и их взаимосвязь.
JAAS (Java Authentication and Authorization Service) – Java-сервис по аутентификации и авторизации.
Для хранения информации о ролях пользователей, об именах пользователей и их паролях в сервере Apache Tomcat используется специальный xml-файл: tomcat-users.xml
Каждый пользователь характеризуется: именем, паролем и списком ролей, приписываемых ему.
Защищенный ресурс (html –страница, jsp-страница, сервлет) привязывается к ролям. Все пользователи, содержащие в своем списке роль, обеспечивающую доступ (привязанную роль) к некоторому ресурсу, имеют возможность доступа к данному ресурсу.
Технология JAAS предполагает две формы аутентификации пользователей: BASICиFORM.
BASIC-аутентификация подразумевает использование стандартной формы ввода данных для аутентификации (имени и пароля).
FORM-аутентификация подразумевает использование собственной формы (разработанной пользователем, но по определенным правилам jsp-страницы) для аутентификации.
Применение JAAS-технологии сводится к xml-описанию необходимой информации в дескрипторе приложения web.xml и к разработке форм для ввода имени и пароля пользователя и сообщения об ошибке (для FORM-аутентификации).
<security-constraint>
<web-resource-collection>
<web-resource-name>go</web-resource-name>
<url-pattern>/index.jsp</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>RoleFAS</role-name>
</auth-constraint>
</security-constraint>
//form
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/errlogin.jsp</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>RoleFAS</role-name>
</security-role>
//basic
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
<security-role>
<role-name>RoleFAS</role-name>
</security-role>