База знаний студента. Реферат, курсовая, контрольная, диплом на заказ

курсовые,контрольные,дипломы,рефераты

Java и MySQL — Программирование, Базы данных

Java и MySQL

Базы данных нашли широкое применение в современном мире программного обеспечения. Наличие мощных вычислительных систем делает возможным создание крупных сервисов по сбору, обработке, хранению, и выдаче структурированной информации. При этом в качестве ядра может выступать MySQL Database server - хорошо зарекомендовавшая себя на практике реализация идеи реляционных баз данных. Помимо этого особое значение приобретают servlet и JSP технологии программирования динамических Web-приложений. Последнее особенно важно, т.к. позволяет относительно легко и просто создавать и поддерживать сайты высокого качества. Основной целью настоящего руководства является описание в простой и наглядной форме процедуры доступа к базе данных MySQL из java-приложения.

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

В качестве примера, будем использовать задачу создания базы данных отдела поставок предприятия, специализирующегося на выпуске кондитерских изделий (Кондитерская фабрика).

Содержание

1.     Программное обеспечение

2.     Установка JDK

3.     Установка и запуск MySQL Database server

4.     Установка MySQL Connector/J

5.     Структура базы данных

6.     Создание базы данных в MySQL

7.     Регистрация MySQL Connector/J

8.     Соединение с MySQL Database server из java-приложения

9.     Выполнение запроса к базе данных

Программное обеспечение

Для рассмотрения процедуры доступа к базам данных MySQL из java-приложений под управлением ОС Windows на компьютере должно быть установлено:

·        Windows 9x, Me, NT, 2000, XP, или Windows Server 2003.

·        JavaTM 2 Standard Edition Runtime Environment, а также набор инструментов разработчика Java-приложений JDKTM версии 1.5.0 или выше.

·        MySQL Database Server версии 4.1 или выше.

·        MySQL Connector/J версии 3.1.6 или выше.

Системные требования определяются требованиями указанных программ, и описаны в поставляемых файлах.

Установка JDK

В настоящем руководстве используется JDK версии 1.5.0. Системные требования, а также инструкции по установке можно узнать, кликнув по ссылке http://java.sun.com/j2se/1.5.0/install.html .

Для успешного запуска примеров необходимо прописать путь к корневой директории классов приложения  в переменной окружения CLASSPATH:

set CLASSPATH=;%CLASSPATH%

Установка и запуск MySQL Database server

В руководстве используется MySQL Database server версии 4.1 или выше. Он распространяется как в рамках GNU лицензии (General Public License http://www.fsf.org/licenses/ ), так и в виде коммерческого продукта ( http://www.mysql.com/company/legal/licensing/ ). Дистрибутив находится здесь http://dev.mysql.com/downloads/ . Для установки необходимо запустить файл Setup.exe. Далее следует указать директорию, в которую будет установлен сервер. Помимо этого, программа установки потребует дополнительный набор сведений, необходимый ей для успешного выполнения распаковки. Для запуска MySQL сервера необходимо запустить файл binmysqld-nt.exe. Для вывода списка параметров, используемых при запуске, добавим параметры --verbose --help. Далее будем предполагать, что MySQL Database server успешно установлен и запущен.

Установка MySQL Connector/J

MySQL Connector/J реализует Sun's JDBC 3.0 API для сервера реляционной базы данных MySQL.

MySQL Connector/J поддерживает Java-2 JVMs, включая JDK-1.2.x, JDK-1.3.x, JDK-1.4.x и JDK-1.5.x, и для компиляции (но не для запуска) требует наличия JDK-1.4.x или выше. MySQL Connector/J поддерживает все известные версии MySQL Database server.

После распаковки архива в переменную окружения CLASSPATH необходимо добавить путь к jar-файлу mysql-connector-java-3.1.6-bin.jar. При этом путь должен содержать имя указанного файла:

set CLASSPATH=mysql-connector-java-3.1.6-bin.jar;%CLASSPATH%

Структура базы данных

База данных (supplement) отдела поставок будет содержать две таблицы:

1.     Таблица ресурсов (необходимые для производства продукты [полуфабрикаты] пищевой промышленности).

2.     Таблица поставщиков (поставщики ресурсов).

В скобках указываются имена, используемые в MySQL для описания соответствующих элементов:

Таблица ресурсов (deliveries) содержит 5 полей:
- идентификатор ресурса (id)
- название ресурса (name)
- название поставщика (supplier)
- объем поставки (amount) (количество единиц продукции в поставке)
- стоимость единицы продукта (price) (денежный формат представления данных)

Таблица поставщиков (suppliers) содержит 6 полей:
- идентификатор поставщика (id)
- название компании поставщика (name)
- расчетный счет (account)
- имя контактного лица (КЛ) (first_name)
- фамилия КЛ (last_name)
- отчество КЛ (second_name)

Создание базы данных в MySQL

В настоящем пункте описывается последовательность команд, используемая для создания базы данных supplement в MySQL.

1.    

shell> binmysql.exe -u root -p lifeisgood

2.                              supplement и делаем ее текущей:

mysql> CREATE DATABASE supplement;

mysql> USE supplement;

3.                              deliveries:

4.              
5.                  -> id MEDIUMINT NOT NULL AUTO_INCREMENT, 
6.                  -> name VARCHAR(30) NOT NULL, 
7.                  -> supplier VARCHAR(30) NOT NULL, 
8.                  -> amount INT UNSIGNED DEFAULT '0' NOT NULL, 
9.                  -> price DOUBLE(16, 2) DEFAULT '0.00' NOT NULL, 
10.                 -> PRIMARY KEY (id) 
11.                 -> );
                                              

12.                          suppliers:

13.             
14.                 -> id MEDIUMINT NOT NULL AUTO_INCREMENT,
15.                 -> name VARCHAR(30) NOT NULL,
16.                 -> account BIGINT NOT NULL,
17.                 -> first_name VARCHAR(30) NOT NULL,
18.                 -> last_name VARCHAR(30) NOT NULL,
19.                 -> second_name VARCHAR(30) NOT NULL,
20.                 -> PRIMARY KEY (id)
21.                 -> );
                                              

22.                          datadeliveries.csv и datasuppliers.csv (предполагается, что файлы были предварительно созданы и заполнены необходимыми данными):

mysql> LOAD DATA INFILE '../data/deliveries.csv' INTO TABLE deliveries;

mysql> LOAD DATA INFILE '../data/suppliers.csv' INTO TABLE suppliers;

23.                         

mysql> exit

Регистрация MySQL Connector/J

Создадим класс MySQLAccess, внутри которого инкапсулируем доступ к созданной в предыдущем пункте базе данных. Поместим его описание в файл MySQLAccess.java.

Для доступа к базам данных используется JDBC, а конкретное соединение предоставляется объектом класса DriverManager.DriverManager должен знать тип драйвера, используемого для работы с конкретной СУБД. Самый простой способ регистрации драйвера, это использовать Class.forName() для класса, реализующего интерфейс java.sql.Driver. Для MySQL Connector/J имя класса драйвера имеет вид com.mysql.jdbc.Driver.

В следующем фрагменте кода происходит регистрация MySQL драйвера.

...
  public static void main(String[] args) {
    ...
    try {
      // Регистрация драйвера MySQL
      Class.forName("com.mysql.jdbc.Driver").newInstance();
      ...
    } catch (Exception e) {
      e.printStackTrace(System.err);
    }
    ...
  }
...
                         

Соединение с MySQL Database server из java-приложения

После того как мы зарегистрировали драйвер базы данных MySQL, можно установить соединение с сервером, используя метод getConnection() класса DriverManager. Указанный метод в качестве параметра принимает URL базы данных (хотя возможно дополнительно указать имя пользователя и пароль, см. документацию к классу). Метод возвращает класс-соединение Connection с базой данных.

В следующем фрагменте кода происходит установка соединения с базой данных supplement.

import java.sql.Connection;
import java.sql.DriverManager;
...
  public static void main(String[] args) {
    Connection conn = null;
    ...
    try {
      ...
      // Устанавливаем соединение с базой данных
      conn = DriverManager.getConnection("jdbc:mysql://localhost/supplement");
      ...
    } catch (Exception e) {
      e.printStackTrace(System.err);
    }
    ...
  }
...
                         

Выполнение запроса к базе данных

Запрос к базе данных инкапсулируется внутри объекта класса Statement. В приведенном ниже фрагменте кода выполняется простой запрос к базе данных для получения всех записей таблицы deliveries. Результат запроса помещается в объект-хранилище ResultSet, содержимое которого затем выводится на консоль.

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
...
  public static void main(String[] args) {
    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    try {
      ...
      // Создаем объект-выражение
      stmt = conn.createStatement();
      // Выполняем запрос к базе данных
      rs = stmt.executeQuery("SELECT * FROM deliveries");
      // Выводим на консоль значения 2-х полей полученных записей
      while (rs.next()) {
        System.out.println(rs.getString("id") 
                                + ": " + rs.getString("price"));
      }
    } catch (Exception e) {
      e.printStackTrace(System.err);
    } finally {
      try {
        if (rs != null) { rs.close(); }
        if (stmt != null) { stmt.close(); }
        if (conn != null) { conn.close(); }
      } catch (SQLException e) {
        e.printStackTrace(System.err);
      }
    }
  }
...
                 

Java и MySQL Базы данных нашли широкое применение в современном мире программного обеспечения. Наличие мощных вычислительных систем делает возможным создание крупных сервисов по сбору, обработке, хранению, и выдаче структурированной информации

 

 

 

Внимание! Представленная Работа находится в открытом доступе в сети Интернет, и уже неоднократно сдавалась, возможно, даже в твоем учебном заведении.
Советуем не рисковать. Узнай, сколько стоит абсолютно уникальная Работа по твоей теме:

Новости образования и науки

Заказать уникальную работу

Похожие работы:

Записная книжка на Delphi 7
Учебник по основам языка Ассемблера
Учебник по языку Ассемблер в задачах и примерах
Учебник по языку Basic в задачах и примерах
Учебник по программированию в среде С++ Builder
Билеты для проведения контрольных мероприятий по Turbo Pascal для начинающих
Билеты по дисциплине "Основы алгоритмизации и программированию"
Расчетно-графическая работа по программированию
Теория вычислительных процессов и структур
Шпаргалка к экзамену по информатике Visual Basic (1 курс)

Свои сданные студенческие работы

присылайте нам на e-mail

Client@Stud-Baza.ru