< Назад | Далее >

Урок 1.2: Подключение к базе данных и отображение данных на Web-странице

В этом уроке вы узнаете как подключаться к базе данных и отображать текстовые записи на Web-странице. Кроме того, вы научитесь добавлять на Web-страницу список реляционных записей.

На Web-сайте в данном учебнике для доступа к базе данных и отображения информации на странице используются динамические Web-страницы с компонентами JavaServer Faces. В этом учебнике используются реляционные записи и списки реляционных записей для представления данных в базе данных чтобы данные можно было просмотреть на странице в виде таблицы данных или обычной таблицы HTML. Этими компонентами используются объекты доступа Java.

Объектами доступа к данным являются объекты Java, представляющие объекты EJB. Обычно они применяются в клиентских программах, работающих с файлами JSP, сервлетами или EJB, взаимодействующими с другими EJB. Объекты доступа позволяют вам не сталкиваться со сложностями управления жизненными циклами объектов EJB. Это означает, что вы можете программировать объекты EJB также легко, как объекты Java, что упрощает клиентские программы объектов EJB и сокращает общее время разработки.

JavaServer Faces - это технология, предназначенная для разработки пользовательских интерфейсов динамических Web-приложений, работающих на сервере. Среда JavaServer Faces управляет состоянием пользовательского интерфейса с помощью серверных запросов и предоставляет простую модель для разработки серверных событий, активируемых клиентом. Технология JavaServer Faces создана на основе среды модель-представление-контроллер (MVC). В контексте JavaServer Faces это означает, что роль контроллера выполняет сервлет, модель представлена объектами EJB, а представление состоит из компонентов JavaServer Faces и кода приложения. Цель этой модели - создание границы между содержимым и представлением.

Такие инструменты, как компоненты Faces, позволяют эффективно применять эту технологию в Web-приложениях. В состав компонентов Faces входит библиотека нестандартных тегов JavaServer Page (JSP), обеспечивающая выражение интерфейса JavaServer Faces на странице. Данный мастер предназначен для создания файлов JSP с поддержкой компонентов Faces. С помощью компонентов Faces Web-приложение можно разрабатывать путем переноса на создаваемые Web-страницы компонентов из лотка Faces панели Палитра.

Например, на страницу можно положить текстовое поле ввода. Затем вы можете перенести кнопку отправки и положить ее рядом с текстовым полем ввода. Наконец, вы можете соединить текстовое поле ввода с источником данных. В результате пользователи Web-приложения смогут вводить данные в источник данных.

Другое преимущество приложений, созданных с помощью компонентов Faces, заключается в том, что пользовательский интерфейс выводится независимо от логики программы. Такой подход позволяет запускать приложения на различных платформах, например, браузерах и портативных устройствах.

Лоток компонентов Faces на панели Палитра.

Добавление списка реляционных записей

В этом уроке вы создадите список реляционных записей для представления всех объявлений в базе данных. Затем вы подключитесь к базе данных и выберите таблицу, содержащую сведения, необходимые для списка реляционных записей. Наконец вы добавите список реляционных записей на страницу в таблице данных.
  • Реляционные записи подключаются только к одной записи из базы данных. В таком случае реляционная запись представляет одно объявление из базы данных. С помощью реляционной записи можно создать одну запись, изменить существующую запись или удалить старую запись.
  • Список реляционных записей подключается к нескольким записям из базы данных. В таком случае список реляционных записей представляет от одного да всех объявлений из базы данных.
  • В таблицах данных отображаются данные из списка реляционных записей на странице Таблицы данных просто являются местом хранения списков записей, они не форматируют данные в строки и столбцы, как это делает таблица HTML.

    Таблица данных является компонентов на странице Faces JSP, содержащим объекты данных, такие как список реляционных записей. Несмотря на то, что таблица с данными имеет строки и столбцы, наподобие таблицы HTML, она не является таблицей в полном смысле этого слова. При необходимости форматирование управляющих элементов ввода и вывода, вам понадобится поле Панель - Группа из лотка Расширенные компоненты Faces на палитре. Этот вопрос описан в разделе Упражнение 2.2: Форматирование таблицы данных.

    Так как таблицы данных являются компонентами Faces, а не компонентами HTML, они управляются с помощью панели Свойства, а не панели Проектировщик страниц. С помощью панели Свойства можно настроить таблицу данных различными способами:
    • Добавить, удалить и изменить расположение столбцов
    • Форматировать текст и фон
    • Добавить заголовок, нижний колонтитул и поля
    • Добавить страницы для отображения результатов

Для создания списка реляционных записей:

  1. В панели Структура проекта проекции Web разверните ClassifiedsTutorial > WebContent.
  2. В папке Содержимое Web-страниц дважды щелкните на файле all_records.jsp. В редакторе откроется файл all_records.jsp.
  3. Удалите текст по умолчанию Содержимое тела по умолчанию.
  4. На панели Палитра разверните Лоток данных.
  5. Перенесите компонент Список реляционных записей из палитры в пустую область содержимого. Откроется окно Добавить список реляционных записей.
  6. В поле Имя введите all_recordlist. Имена списка реляционных записей и самих реляционных записей должны соответствовать стандарту именования имен переменных Java, например, они не могут содержать пробелы.
  7. Убедитесь, что выбрана опция Добавить управляющие элементы данных. Если опция Добавить управляющие элементы данных выбрана, мастер создаст таблицу данных для отображения списка записей на странице. В противном случае мастер создаст только список записей без представления данных на странице. Сейчас же мастер создаст таблицу данных по умолчанию, которую вы сможете настроить в дальнейшем. Окно Добавить список реляционных записей будет выглядеть следующим образом:
    Добавить список реляционных записей

    Нажмите кнопку Далее.

  8. На следующей странице мастера в поле Имя соединения нажмите кнопку Создать для создания нового соединения с базой данных. Откроется окно Создать соединение JDBC. Выберите переключатель Создать новое соединение и нажмите кнопку Далее.
  9. В списке Выбрать администратора базы данных разверните запись Derby и выберите 10.1.
  10. В поле Расположение базы данных нажмите кнопку Обзор и выберите <расположение-рабочей-области>\ClassifiedsTutorial\WebContent\\database, где <расположение-рабочей-области> - это каталог текущей рабочей области. Нажмите кнопку OK, чтобы закрыть окно Выбрать папку.
  11. В поле Расположение класса введите расположение одного или нескольких файлов JAR с реализацией класса драйвера JDBC, либо нажмите кнопку Обзор, чтобы выбрать нужное расположение в файловой системе. После выбора расположения файлов JAR нажмите кнопку Открыть.
  12. Для обращения к базе данных может потребоваться указать ИД пользователя. Пароль не требуется. Мастер Создать соединение с базой данных выглядит следующим образом:
    Окно Создать соединение с базой данных.
  13. В мастере Создать соединение JDBC нажмите кнопку Готово. Вы вернетесь к мастеру Добавить список реляционных записей.
  14. Выберите опцию Настроить соединения проекта с базой данных. Будет показано окно свойств соединений JDBC.
  15. Выберите опцию Изменить рядом с разделом сведений о рабочих соединениях. В качестве типа соединения выберите Использовать соединение диспетчера драйверов. Для возврата к окну Добавить список реляционных записей нажмите кнопку Готово, а затем OK. Теперь, создав соединение с базой данных Derby, необходимо выбрать таблицу или список записей для представления. Мастер Добавить список реляционных записей покажет таблицы из базы данных.
  16. Разверните запись W5SAMPLE и выберите ADS. Нажмите кнопку Далее. На оставшихся страницах мастера можно добавить столбцы для списка записей и настроить дополнительные опции, например задать главный ключ, взаимосвязи с другими таблицами и указать фильтры и критерии сортировки. Последующие упражнения помогут вам научиться работать с этими страницами.
    Окно Добавить список реляционных записей
  17. На странице Добавить реляционную запись укажите столбцы, которые требуется добавить в список реляционных записей. Нажмите кнопку Далее.
  18. Для данного учебника вам понадобится отображение лишь заголовка, описания, категории, цены и телефонного номера для каждого объявления. По умолчанию выбраны все столбцы; отмените выбор всех столбцов за исключением следующих:
    • ГЛАВНАЯ КАТЕГОРИЯ: String
    • ЗАГОЛОВОК: String
    • ОПИСАНИЕ: String
    • ЦЕНА: BigDecimal
    • ТЕЛЕФОН: String
  19. Можно дополнительно уточнить организацию отображения таблицы данных на Web-странице. Для изменения порядка столбцов выберите столбец и переместите его в нужное положение с помощью кнопок со стрелками вверх и вниз.
    Расположите столбцы в следующем порядке:
    • ЗАГОЛОВОК
    • ОПИСАНИЕ
    • ГЛАВНАЯ КАТЕГОРИЯ
    • ЦЕНА
    • ТЕЛЕФОН
    Нажмите кнопку Готово.
    Теперь Web-страница выглядит следующим образом:
    Текущий внешний вид страницы.
  20. Сохраните страницу.
В следующем уроке вы узнаете как будет выглядеть эта страница после публикации на Web-сервере. Для форматирования таблиц с данными и компонентов JavaServer Faces существует несколько вариантов. Некоторые из них будут описаны в следующем модуле. Можно также просмотреть панель Свойства для различных компонентов JavaServer Faces (например, таблицы с данными и отдельные компоненты ввода).

Контрольные точки урока

Вы закончили урок 1.2. Вы научились подключаться к базе данных и отображать текстовые записи на Web-странице с помощью списка реляционных записей.

< Назад | Далее >