Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие_Информатика_v3.doc
Скачиваний:
57
Добавлен:
09.11.2019
Размер:
1.13 Mб
Скачать

3. Рабочие задания

Ниже представлены задания, которые необходимо выполнить для достижения цели, поставленной в данной работе.

Для выполнения заданий сначала нужно создать в среде Eclipse веб-проект, в котором затем создавать Java-классы и страницы .jsp, .xhtml согласно заданиям.

Замечание.

Для студентов младших курсов, изучающих дисциплину «Информатика», скриншоты кода будут даны преподавателем. Для них основной задачей будет только правильное написание этого кода и его отладка.

Задание 1. Программные компоненты для авторизации пользователей

Основная страница веб-приложения носит название index.jsp. Она является стартовой и при ее загрузке в браузере пользователь наблюдает окно, представленное на рис. 3.2 в разделе «Разработка пользовательского интерфейса» настоящего учебного пособия.

Обработку данных со страницы index.jsp осуществляет класс Login.class. Основными его задачами являются осуществление валидации полей формы по нулевым значениям и проверка наличия имени и пароля пользователя в БД. За валидацию введенных значений отвечает следующий код класса Login (рис. 5.4). Из примера кода видно, что, если пользователь оставил хотя бы одно поле (Имя или Пароль) пустым, то программа выдаст в окно браузера соответствующее сообщение об ошибке. Если оба поля заполнены, программа считывает введенные значения, соединяется с БД и посылает ей запрос на поиск значений. В БД для данного случая всего два значения – student и expert. Если пользовательские данные совпали со строкой БД student, то метод класса Login выдает значение success_student, если с expert, то success_expert (рис. 5.5).

Рис.5.4. Программный код валидации данных

Рис.5.5. Программный код поиска введенных значений в БД

На основе выданного классом Login значения механизм JSF осуществляет навигацию. Конфигурация навигации прописывается в файле faces-config.xml (рис. 5.6). Как видно из скриншота файла, навигация осуществляется следующим образом: если пользователь залогинился под именем student, то переход осуществляется на страницу welcome_student, если под именем expert – на страницу welcome_expert.

Рис.5.6. Навигация на основе значения, возвращаемого классом Login

Страница welcome_student выдает пользователю окно формы, соответствующее представленному на рис.3.3 в разделе «Разработка пользовательского интерфейса» настоящего учебного пособия. При помощи этой формы студент должен выбрать из списка свою группу, ФИО и ввести номер зачетки в качестве пароля. Если номер зачетки совпадет с номером для данных ФИО в БД, то авторизация пройдет успешно и пользователь будет переведен на страницу с выбором занятия для анкетирования.

Страница welcome_student работает с классом StudentsAuthGroup (см. рис. 5.3), отвечающим за вывод списка групп и ФИО студентов, а также за проверку введенного студентом значения номера зачетной книжки. При правильности введенных данных метод класса выдает значение success_StAuth, на основе которого осуществляется навигация на страницу AnketsMenu.xhtml (рис. 5.7).

Рис.5.7. Навигация на основе значения, возвращаемого классом StudentsAuthGroup