MySQL 5.0. Библиотека программиста
Шрифт:
while(my $product = $query->fetchrow_hashref(«NAME_uc»))
{
print «»
foreach my $field_name (keys %$product)
{
print «$product->{$field_name}\t»;
}
print “”
}Этих недостатков лишен метод fetchrow_arrayref, который работает аналогично методу fetchrow_hashref, но возвращает ссылку на массив с числовыми индексами. При использовании метода fetchrow_arrayref сценарий для вывода списка товаров будет следующим (листинг 4.13). Листинг 4.13. Получение информации и отображение ее на странице
#!»C:\Program Files\xampp\perl\bin\perl.exe»
print
use DBI;
#Подсоединяемся к базе данных
my $dbh = DBI -> connect(«DBI:mysql:database=SalesDept;host=localhost»,
«username»,»userpassword»);
if(!$dbh)
{
print «Ошибка доступа к базе данных. Приносим свои извинения”;
die;
}
#Устанавливаем кодировку CP-1251
$dbh->do(«SET NAMES cp1251»);
#Выполняем запрос к базе данных
my $query = $dbh->prepare(«SELECT * FROM Products»);
my $qresult = $query -> execute;
if(!$qresult)
{
print “Ошибка доступа к базе данных. Приносим свои извинения”;
die;
}
#Создаем строку для вывода результатов запроса
my $pagecontent=””;
#Для каждой строки из результата запроса
#записываем данные в массив и сохраняем ссылку на массив
#в переменной $product
while(my $product = $query -> fetchrow_arrayref)
{
#Выводим элементы массива с номерами 1, 2, 3
$pagecontent.=»<tr><td>».$product->[1].»</td>».
«<td>».$product->[2].»</td>».
«<td>».$product->[3].»</td></tr>\n»;
}
#Освобождаем ресурсы
$query -> finish;
#Отсоединяемся от базы данных
$dbh->disconnect;
#Выводим полученные данные
print “
<html>
<head>
<title>Работа с MySQL</title>
</head>
<body>
<!– Выводим заголовок списка товаров –>
<h1>Список товаров</h1>
<table>
<tr>
<th>Наименование</th>
<th>Описание</th>
<th>Цена</th>
</tr>
«.$pagecontent.»
</table>
</body>
</html>
“;Итак, вы узнали, как создать сценарий Perl, запрашивающий информацию из базы данных. Теперь кратко обобщим основные сведения, изложенные в этом разделе.
Итоги
В данном разделе вы изучили функции языка Perl, позволяющие выполнять все необходимые операции с базой данных MySQL:
• подключение к базе данных и отключение от нее;
• выполнение SQL-команд как получающих информацию из базы данных (методы prepare и execute), так и не получающих ее (метод do);
• обработка ошибок.
Ознакомиться с полным списком функций модуля Perl DBI вы можете, перейдя по страницена ссылку Manual pages.
В следующем разделе вы узнаете о том, как взаимодействуют с базой данных веб-приложения на языке Java.
4.3. Интерфейс с Java
В
В первую очередь вы узнаете, какое программное обеспечение потребуется для создания сервлетов.
Среда разработки сервлетов
Для создания сервлетов необходимы следующие программы:
• Java Development Kit (JDK) – пакет поддержки разработок в среде Java;
• дополнительная библиотека servlet-api.jar (или servlet.jar), необходимая для компиляции сервлетов, но не входящая в состав Java Development Kit;
• контейнер сервлетов – программа, обеспечивающая загрузку и выполнение сервлетов;
• программа, выполняющая функции веб-сервера.
Широко известным контейнером сервлетов является Tomcat – свободно распространяемая программа с открытым кодом. Tomcat может выполнять функции веб-сервера либо использоваться совместно с веб-сервером Apache. В состав Tomcat входит и библиотека servlet-api.jar.
Кроме того, чтобы сервлеты могли взаимодействовать с базой данных, необходимо установить и подключить JDBC-драйвер. В качестве такого драйвера был выбран MySQL Connector/J.
Итак, наша среда разработки будет состоять из Java Development Kit, Tomcat и MySQL Connector/J. В следующем подразделе вы узнаете, как установить и настроить эти компоненты.
Подготовка к работе
В данном подразделе мы рассмотрим создание среды разработки сервлетов. Вначале мы загрузим и установим компоненты среды, затем выполним несколько несложных настроек.
Установка Java Development Kit
Для установки Java Development Kit выполните следующие действия.
1. Чтобы скачать дистрибутив JDK с сайта компании-разработчика, откройте вебстраницуи в разделе JDK 6 Update X щелкните на кнопке Download (Скачать).
2. На открывшейся веб-странице выберите вариант дистрибутива (рис. 4.25):
• если вы работаете в 32-разрядной операционной системе (Windows Vista/ Server 2003/XP/Millennium Edition/2000/98/95), то в поле Plaltform (Платформа) выберите из списка значение Windows;
• если вы работаете в 64-разрядной операционной системе (Windows Vista x64/Server 2003 x64/XP x64), то в поле Plaltform (Платформа) выберите из списка значение Windows x64.
3. Установите флажок I agree to the Java SE Development Kit 6 License Agreement (Я согласен с условиями лицензионного соглашения) и нажмите кнопку Continue (Продолжить).
Рис. 4.25. Выбор варианта дистрибутива
4. На следующей странице щелкните на ссылке, соответствующей загружаемому файлу инсталлятора.
5. После загрузки файла запустите его, дважды щелкнув на его значке.
6. В окне License Agreement (Лицензионное соглашение) (рис. 4.26) для принятия условий лицензионного соглашения нажмите кнопку Accept (Принять).
В окне Custom Setup (Выборочная установка) (рис. 4.27) нажмите кнопку Change (Изменить), чтобы указать корневую папку Java.
В появившемся окне (рис. 4.28) в поле Folder name (Имя папки) введите путь к папке либо в поле Look in (Смотреть в) выберите из списка нужный диск, а затем последовательно раскройте вложенные папки, пока не дойдете до нужной.
Нажмите кнопку OK для возврата в предыдущее окно.
8. Из списка устанавливаемых компонентов (см. рис. 4.27) обязательными являются только Development Tools (Инструменты разработки) и Demos and Samples
(Образцы и примеры). Остальные компоненты вы можете исключить из установки для экономии дискового пространства. Чтобы исключить компонент, щелкните значок слева от названия компонента и в контекстном меню выберите пункт
– не устанавливать.
Для запуска установки нажмите кнопку Next (Далее).
9. После окончания установки нажмите кнопку Finish (рис. 4.29).