Название метода
|
Описание
|
public
void izm()
|
Метод позволяет
соединиться с базой данных и с помощью SQL-запроса на изменение
данных в таблице, изменить выбранную из списка запись, введя новые значения.
|
public
void Search()
|
Этот метод записывает
в выпадающий список все наименования видов отдыха. Он также соединяется с
базой данных и с помощью SQL-запроса выбирает нужные данные.
|
private
void jTextField2MouseClicked()
|
Метод служит для того,
чтобы по нажатию на текстовое поле, пользователь мог ввести данные, если они
сразу были введены неверно.
|
private
void jTextField3MouseClicked()
|
Аналогичен методу
jTextField2MouseClicked().
|
private
void jTextField4MouseClicked()
|
Аналогичен методу
jTextField2MouseClicked().
|
private
void jButton1ActionPerformed()
|
Метод обрабатывает и
проверяет на правильность, вводимые пользователем данные, а затем реализует
метод izm(). Если введены некорректные данные, то пользователю
подсвечивается поле, которое нужно исправить.
|
private
void jButton2ActionPerformed()
|
Метод служит для
закрытия класса «Vid_Izm».
|
|
|
|
3.
Реализация интерфейса пользователя
3.1
Инструкция пользователя
Для работы с базой данных
пользователю не нужно иметь специальных навыков, достаточно лишь ознакомиться с
данной пояснительной запиской или с литературными источниками,
использовавшимися для выполнения курсовой работы, список которых приведен ниже.
Разработанное приложения позволяет
следить количеством путевок, а также вносить изменения. Приложения также
считает выводит информацию о нужных путевках и их стоимость.
Для отображения и редактирования
информации в базе данных, а также для выполнения дополнительных функций по
обработке данных был создан набор форм. Пользователь имеет возможность перейти
к редактированию любой таблицы путём выбора надписи с её именем в списке.
Для запуска программы следует
запустить jar-файл, который находится в папке с проектом:
Курсовая\Kursovaya\dist\Kursovaya.jar или открыть проект в среде разработки
приложений Netbeans IDE. В запустившейся программе нажать функциональную клавишу F6, после чего проект будет собран и
запущен. После открытия проекта на экране появится главная форма «Главное
меню», отображающая все таблицы, изображённая на рисунке 3.1.
Рисунок 3.1 - Вид главной формы
3.2 Описание результатов
После открытия главной формы,
пользователю необходимо выбрать нужную ему таблицу базу данных и работать с
ней, которые в свою очередь отображают, добавляют новые, удаляют и изменяют
имеющиеся данные.
При выборе пункта меню «Таблица
Автомобили», отображается форма, представленная на рисунке 3.2. На форме
отображается таблица с полями: Id_автомобиля, Id_авто_характеристики,
Регистр_номер, Номер_кузова, Номер_двигателя, Год_выпуска, Пробег, Цена_авто,
«Цена_дня_проката», Дата_последнего_ТО, Id_сотрудника_механика, Спец_отметки,
Отметка_о_возврате. Возможно редактирование, добавление, удаление данных в
таблице.
Рисунок 3.2 - Вид формы «Таблица
Автомобили»
При выборе пункта меню «Таблица
Марки автомобилей», отображается форма, представленная на рисунке 3.3. На форме
отображается таблица с полями: Id_авто_характеристики, Наименование,
Тех_характеристики, Описание. Возможно редактирование, добавление, удаление.
Рисунок 3.3 - Вид формы «Таблица
Марки автомобилей»
При выборе пункта меню
«Дополнительные услуги», отображается форма, представленная на рисунке 3.4. На
форме представлена таблица с данными: id_услуги, наименование, описание, цена. Возможно редактирование,
добавление и удаление данных.
Рисунок 3.4 - Вид формы «Таблица
Дополнительные услуги»
При выборе пункта меню «Клиенты»,
отображается форма, показанная на рисунке 3.5. На форме представлена таблица с
данными: id_клиента, Ф.И.О., дата рождения, пол, адрес, телефон, паспортные
данные. Возможна правка, удаление и добавление данных.
Рисунок 3.5 - Вид формы «Таблица
Клиенты»
При выборе пункта меню «Прокат»,
отображается форма, показанная на рисунке 3.6. На форме представлена таблица с
данными: id_проката, дата выдачи, срок проката, дата возврата, срок проката,
дата возврата, id_автомобиля, id_клиента, id_услуги. Возможно редактирование, добавление, удаление данных.
Рисунок 3.6 - Вид формы «Таблица
Прокат»
На страницах, в которых допускается
изменение существующих данных, редактирование производится следующим образом:
при нажатии кнопки «Изменить», открывается новая форма. В выпадающем списке
выбираем то поле, которое хотим изменить и вводим новые данные в поля
редактирования имеющиеся на этой форме. После введения корректных данных и
нажатия кнопки «изменить данные в таблице» измененная запись будет сохранена.
Пример изменения данных представлен на рисунке 3.7.
Рисунок 3.7 - Пример изменения
данных в таблице
Для добавления данных нужно нажать
кнопку «Добавить» и в открывшейся форме ввести данные и нажать кнопку «добавить
данные в таблицу». Если данные все введенные данные будут допустимы, запись
добавится в таблицу, если нет - появится сообщение о некорректности данных.
Пример добавления данных в таблицу представлен на рисунке 3.8.
Рисунок 3.8 - Пример добавления
данных в таблицу
Для удаления информации нужно нажать
кнопку «Удалить», затем выбрать из выпадающего списка нужную строку и нажать
кнопку «удалить данные из таблицы». Данные будут удалены. Пример удаления данных
представлен на рисунке 3.9.
Рисунок 3.9 - Пример удаления данных
из таблицы
Разработанная информационная система
имеет интуитивно понятный интерфейс и организована так, что с ней может
работать пользователь с минимальными знаниями и навыками работы с компьютером.
Требования к пользователю:
умение пользоваться компьютерной
мышью и клавиатурой;
ознакомление с предметной областью
задачи;
понимание работы программы для её
оценки.
Разработанная информационная система
позволяет добавлять, редактировать, удалять и отображать данные о сотрудниках,
об их должностях. А также данные о путевках, отелях, видах отдыхов, клиентов, дополнительных
услуг. Кроме того, имеются некоторые другие дополнительные возможности
обработки данных, описанные в разделе «Руководство пользователя». Программа
«Учет проката автомобилей» позволит автоматизировать работу сотрудников, что
уменьшит их труд и затрачиваемое время.
Никаких ограничений и требований на
режим работы и запуска программы не налагается. Для контроля правильности
выполнения программы предусмотрены сообщения пользователю о некорректно
введенных данных. Средства восстановления программы после сбоя не
предусмотрены.
Для исключения бесполезной,
неинформативной или противоречивой информации, введённой пользователем, в
приложении осуществляется проверка вводимых данных. Критерии проверки могут
быть самыми разными, начиная с того, вводились ли данные вообще, и заканчивая
проверкой типа данных.
В ходе выполнения программы, при не
заполнении полей, выдается сообщение. На рисунке 3.12 изображен пример.
Рисунок 3.10 - Пример сообщения при
наличии незаполненных ячеек
Также ввод корректных данных
обеспечивается использованием выпадающих списков значений для определённых
полей. Пользователь не вводит данные с клавиатуры, а лишь выбирает значение из
предлагаемого списка.
Пример выпадающих списков,
используемых при вводе данных приведен на рисунке 3.13.
Рисунок 3.11 - Пример выпадающих
списков, используемых при вводе данных
Заключение
Курсовая работа - этап обучения
студента, где проявляются навыки выполнения самостоятельной
научно-исследовательской работы и овладения методикой исследования и
эксперимента при решении актуальной задачи в области избранной студентом
специальности. Любая курсовая работа является неотъемлемой частью обучения
студентов. В результате выполнения курсовой была спроектирована информационная
система «Учет проката автомобилей».
В ходе разработки приложения для
курсового проекта, были учтены все требования. А так же учтены пожелания
пользователя в легкости и доступности данной программы.
Итогом курсовой работы стало
приложение «Учет проката автомобилей», осуществляющее переход из одной таблицы
на другую и выполнения операций с данными, а именно: добавление, удаление,
правка. Сначала был проведён анализ предметной области, разработана база
данных, затем был разработан алгоритм работы приложения и интерфейс. Приложение
имеет простой и понятный интерфейс, который позволяет пользователям без труда
работать с данной информационной системой, поскольку при разработке были
использованы общепринятые стандарты.
Данная курсовая работа даёт
возможность глубже изучить пройденный материал, позволяет закрепить навыки
решения поставленных задач и научиться поиску необходимой для этого информации,
а так же помогла освоить на практике все теоретические знания.
Список использованных
источников
1. Хомоненко А.Д. Базы
данных: Учебник для высших учебных заведений / Под ред. проф. А.Д. Хомоненко. -
5-е изд., доп. - М.: Бином-Пресс; СПб.: КОРОНА принт, 2006. -736 с.
2. В. Монахов Язык
программирования Java и среда NetBeans 4-е издание. - СПб.: Питер, 2009. - 640
с.
. Блинов И.Н. Java промышленное
программирование: практ. пособие. - Минск: УниверсалПресс, 2007. - 704 с.
. Брюс Эккель.
Философия Java. Библиотека программиста. 4-е изд. - СПб.: Питер, 2009. - 640 с.
. Хабибулин И.Ш.
Самоучитель Java. - Спб.: БХВ-Петербург, 2001. - 464 с.
Приложение А
Исходный код главной
формы
import
java.sql.*;java.util.*;javax.swing.*;javax.swing.table.*;class kyrsovoiUI
extends javax.swing.JFrame {
/**
* Creates new form
kyrsovoiUI
*/kyrsovoiUI() {();
}
/**
* This method is called
from within the constructor to initialize the form.
* WARNING: Do NOT modify
this code. The content of this method is always
* regenerated by the
Form Editor.
*/
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JLabel();= new javax.swing.JButton();= new javax.swing.JButton();=
new javax.swing.JButton();= new javax.swing.JButton();= new
javax.swing.JButton();= new javax.swing.JButton();= new javax.swing.JMenuBar();=
new javax.swing.JMenu();= new javax.swing.JMenu();= new javax.swing.JMenu();=
new javax.swing.JMenu();= new javax.swing.JMenu();= new javax.swing.JMenu();
(«Курсовая работа
ВСРПП»);(javax.swing.UIManager.getDefaults().getColor («textHighlight»));
.setFont (new java.awt.
Font («Tahoma», 0, 18)); // NOI18N.setText (» Выберите пункт меню»);
.setText («Таблица
Автомобили»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Таблица Марки
автомобилей»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Таблица
Прокат»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Таблица Доп.
услуги»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Таблица
Клиенты»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Выход»);.addActionListener
(new java.awt.event. ActionListener() {void actionPerformed (java.awt.event.
ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Файл»);
.setText
(«Выход»);.addMouseListener (new java.awt.event. MouseAdapter() {void
mouseClicked (java.awt.event. MouseEvent evt) {MouseClicked(evt);
}
});.addMenuListener (new
javax.swing.event. MenuListener() {void menuDeselected (javax.swing.event.
MenuEvent evt) {
}void menuSelected
(javax.swing.event. MenuEvent evt) {
}void menuCanceled
(javax.swing.event. MenuEvent evt) {MenuCanceled(evt);
}
});.add(jMenu7);
.add(jMenu3);
.setText («Запросы»);4.setToolTipText(«»);
jMenu5.setText («Запрос на просмотр информации о прокате»);
jMenu5.addMouseListener
(new java.awt.event. MouseAdapter() {void mouseClicked (java.awt.event.
MouseEvent evt) {MouseClicked(evt);
}
});.add(jMenu5);
6.setText («Запрос на просмотр
произведенных услуг»);
jMenu6.addMouseListener
(new java.awt.event. MouseAdapter() {void mouseClicked (java.awt.event.
MouseEvent evt) {MouseClicked(evt);
}
});.add(jMenu6);
1.setText («Запрос на просмотр
цены за прокат»);
jMenu1.addMouseListener
(new java.awt.event. MouseAdapter() {void mouseClicked (java.awt.event.
MouseEvent evt) {MouseClicked(evt);
}
});.add(jMenu1);
.add(jMenu4);
(jMenuBar2);
.swing. GroupLayout
layout = new javax.swing. GroupLayout
(getContentPane());().setLayout(layout);.setHorizontalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()(layout.createParallelGroup (javax.swing.
GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.LEADING,
false)(layout.createSequentialGroup()(jButton1)(18, 18, 18)(jButton2)(26, 26,
26)(jButton4))(jLabel1, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)(javax.swing. GroupLayout.
Alignment.TRAILING, layout.createSequentialGroup()(89, 89,
89)(jButton3)(javax.swing. LayoutStyle. ComponentPlacement.RELATED, javax.swing.
GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)(jButton5)(84, 84,
84))))(layout.createSequentialGroup()(140, 140, 140)(jButton6, javax.swing.
GroupLayout.PREFERRED_SIZE, 229, javax.swing.
GroupLayout.PREFERRED_SIZE)))(javax.swing. GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()(6, 6, 6)(jLabel1,
javax.swing. GroupLayout.PREFERRED_SIZE, 37, javax.swing.
GroupLayout.PREFERRED_SIZE)(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout.
Alignment.BASELINE)(jButton1)(jButton2)(jButton4))(javax.swing. LayoutStyle.
ComponentPlacement.UNRELATED)(layout.createParallelGroup (javax.swing.
GroupLayout. Alignment.BASELINE)(jButton3)(jButton5))(javax.swing. LayoutStyle.
ComponentPlacement.UNRELATED)(jButton6)(javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
();
} //
</editor-fold>
void
jButton5ActionPerformed (java.awt.event. ActionEvent evt) {f4 = new Table4
();.setVisible(true); // TODO add your handling code here:
}
void
jButton6ActionPerformed (java.awt.event. ActionEvent evt) {.exit(0); // TODO
add your handling code here:
}
void
jButton1ActionPerformed (java.awt.event. ActionEvent evt) {f3 = new Table3
();.setVisible(true); // TODO add your handling code here:
}
void
jButton2ActionPerformed (java.awt.event. ActionEvent evt) {f1 = new Table1
();.setVisible(true); // TODO add your handling code here:
}
void
jButton3ActionPerformed (java.awt.event. ActionEvent evt) {f2 = new Table2 ();.setVisible(true);
// TODO add your handling code here:
}
void
jButton4ActionPerformed (java.awt.event. ActionEvent evt) {f5 = new Table5
();.setVisible(true); // TODO add your handling code here:
}
void jMenu7MenuCanceled
(javax.swing.event. MenuEvent evt) {
// TODO add your
handling code here:
} void
jMenu7MouseClicked (java.awt.event. MouseEvent evt) {.exit(0); // TODO add your
handling code here:
}
void jMenu5MouseClicked
(java.awt.event. MouseEvent evt) {_prokat z3 = new
Zapros_prokat();.setVisible(true); // TODO add your handling code here:
}
void jMenu6MouseClicked
(java.awt.event. MouseEvent evt) {_prosm_avto z3 = new
Zapros_prosm_avto();.setVisible(true); // TODO add your handling code here:
}
void jMenu1MouseClicked
(java.awt.event. MouseEvent evt) {_cen z3 = new Zapr_cen();.setVisible(true);
// TODO add your handling code here:
}void jMenu8MouseClicked
(java.awt.event. MouseEvent evt) {
// TODO add your
handling code here:
}
/**
* @param args the
command line arguments
*/static void main
(String args[]) {
/* Set the Nimbus look
and feel */
// <editor-fold
defaultstate= «collapsed» desc=» Look and feel setting code (optional) «>
/* If Nimbus (introduced
in Java SE 6) is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/{(javax.swing.UIManager.
LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels())
{(«Nimbus».equals (info.getName())) {.swing.UIManager.setLookAndFeel
(info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(kyrsovoiUI.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(InstantiationException ex) {.util.logging. Logger.getLogger
(kyrsovoiUI.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(kyrsovoiUI.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(kyrsovoiUI.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run()
{kyrsovoiUI().setVisible(true);
}
});
}
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JButton
jButton2;javax.swing.JButton jButton3;javax.swing.JButton
jButton4;javax.swing.JButton jButton5;javax.swing.JButton
jButton6;javax.swing.JLabel jLabel1;javax.swing.JMenu jMenu1;javax.swing.JMenu
jMenu3;javax.swing.JMenu jMenu4;javax.swing.JMenu jMenu5;javax.swing.JMenu
jMenu6;javax.swing.JMenu jMenu7;javax.swing.JMenuBar jMenuBar2;
// End of variables declaration}
Приложение Б
Исходный код формы
«Марка автомобилей»
import
java.sql.*;java.util.*;javax.swing.*;javax.swing.table.*;
/**
*
* @author User
*/class Table1 extends
javax.swing.JFrame {
/**
* Creates new form
Table1
*/Table1 () {();();
}void Connection()
{
{count = 0;.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn =
DriverManager.getConnection («jdbc:odbc:mydb», connInfo);s =
conn.createStatement();= new
javax.swing.JTable();.setAutoCreateRowSorter(true);.setViewportView(jTable1);klass=s.executeQuery
(«SELECT * FROM Марки_авто»);(klass.next())
{++;
}klass1=s.executeQuery
(«SELECT * FROM Марки_авто»);[] columnNames = {«Id_авто_характеристики»,
«Наименование», «Тех_характеристики», «Описание»};
String[][] data = new
String[count] [1];.setModel (new javax.swing.table. DefaultTableModel (data,
columnNames));(int i=0; i<count; i++)
{.next();.setValueAt
(klass1.getString(1), i, 0);.setValueAt (klass1.getString(2), i, 1);.setValueAt
(klass1.getString(3), i, 2);.setValueAt (klass1.getString(4), i, 3);
}.close();.close();
}(Exception ex)
{.out.println(ex);
}
}
/**
* This method is called
from within the constructor to initialize the form.
* WARNING: Do NOT modify
this code. The content of this method is always
* regenerated by the
Form Editor.
*/
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JScrollPane();= new javax.swing.JTable();= new
javax.swing.JButton();= new javax.swing.JButton();= new javax.swing.JButton();=
new javax.swing.JButton();
(«Таблица \ «Марки
автомобилей\"»);(new java.awt.event. WindowAdapter() {void windowActivated
(java.awt.event. WindowEvent evt) {(evt);
}
});
.setModel (new
javax.swing.table. DefaultTableModel (Object [][] {
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null, null}
},String [] {
}
));.setViewportView(jTable1);
.setText
(«Выход»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText
(«Добавление»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText
(«Удаление»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.setText
(«Изменение»);.addActionListener (new java.awt.event. ActionListener() {void actionPerformed
(java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.swing. GroupLayout
layout = new javax.swing. GroupLayout
(getContentPane());().setLayout(layout);.setHorizontalGroup (.createParallelGroup
(javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.LEADING)(jScrollPane1, javax.swing.
GroupLayout.DEFAULT_SIZE, 740, Short.MAX_VALUE)(layout.createSequentialGroup()(jButton2)(18,
18, 18)(jButton3)(18, 18, 18)(jButton4, javax.swing.
GroupLayout.PREFERRED_SIZE, 118, javax.swing.
GroupLayout.PREFERRED_SIZE)(javax.swing. LayoutStyle.
ComponentPlacement.RELATED, javax.swing. GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)(jButton1,
javax.swing. GroupLayout.PREFERRED_SIZE, 89, javax.swing.
GroupLayout.PREFERRED_SIZE)))())
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(jScrollPane1, javax.swing.
GroupLayout.PREFERRED_SIZE, 191, javax.swing.
GroupLayout.PREFERRED_SIZE)(javax.swing. LayoutStyle.
ComponentPlacement.RELATED, javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)(layout.createParallelGroup (javax.swing. GroupLayout.
Alignment.BASELINE)(jButton1)(jButton2)(jButton3)(jButton4))())
);();
} //
</editor-fold>
void
jButton1ActionPerformed (java.awt.event. ActionEvent evt) {
.setVisible(false); //
TODO add your handling code here:
}
void
jButton2ActionPerformed (java.awt.event. ActionEvent evt) {Dob f3 = new
Table1Dob();.setVisible(true);
}
void
jButton4ActionPerformed (java.awt.event. ActionEvent evt) {
Izm f3 = new
Table1Izm();.setVisible(true);
}
void
jButton3ActionPerformed (java.awt.event. ActionEvent evt) {Del f3 = new
Table1Del();.setVisible(true); // TODO add your handling code here:
}
void formWindowActivated
(java.awt.event. WindowEvent evt) {();
}
/**
* @param args the
command line arguments
*/static void main
(String args[]) {
/* Set the Nimbus look
and feel */
// <editor-fold
defaultstate= «collapsed» desc=» Look and feel setting code (optional) «>
/* If Nimbus (introduced
in Java SE 6) is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/{(javax.swing.UIManager.
LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels())
{(«Nimbus».equals (info.getName())) {.swing.UIManager.setLookAndFeel
(info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(Table1.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(InstantiationException ex) {.util.logging. Logger.getLogger
(Table1.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(Table1.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(Table1.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run() {Table1
().setVisible(true);
}
});
}int k = 0;static String
search;
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JButton
jButton2;javax.swing.JButton jButton3;javax.swing.JButton
jButton4;javax.swing.JScrollPane jScrollPane1;javax.swing.JTable jTable1;}
Приложение В
Исходный код формы
«Добавление марки автомобиля»
import java.sql.
Connection;java.sql. DriverManager;java.sql. PreparedStatement;java.sql.
ResultSet;java.sql. Statement;java.util. Properties;javax.swing.JOptionPane;
/**
* Creates new form
Table1Dob
*/Table1Dob() {();
}
/**
* This method is called
from within the constructor to initialize the form.
* WARNING: Do NOT modify
this code. The content of this method is always
* regenerated by the
Form Editor.
*/
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JLabel();= new javax.swing.JTextField();= new
javax.swing.JTextField();= new javax.swing.JTextField();= new
javax.swing.JTextField();= new javax.swing.JButton();= new javax.swing.JLabel();=
new javax.swing.JLabel();= new javax.swing.JLabel();= new
javax.swing.JLabel();= new javax.swing.JButton();
.setText («jLabel3»);
(«Добавление»);
1.setText («Добавить данные в
таблицу»);
jButton1.addActionListener
(new java.awt.event. ActionListener() {void actionPerformed (java.awt.event.
ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Введите id
характеристики»);
2.setText («Введите название
автомобиля»);
jLabel4.setText («Введите техн. хар-ки автомобиля»);
jLabel5.setText («Введите описание автомобиля»);
jButton2.setText
(«Отмена»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.swing. GroupLayout
layout = new javax.swing. GroupLayout
(getContentPane());().setLayout(layout);.setHorizontalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()(21, 21,
21)(layout.createParallelGroup (javax.swing. GroupLayout.
Alignment.TRAILING)(layout.createSequentialGroup()(jLabel2)(javax.swing.
LayoutStyle. ComponentPlacement.RELATED, javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)(jTextField2, javax.swing. GroupLayout.PREFERRED_SIZE, 142, javax.swing.
GroupLayout.PREFERRED_SIZE))(layout.createSequentialGroup()(jLabel1)(javax.swing.
LayoutStyle. ComponentPlacement.RELATED, javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)(jTextField1, javax.swing. GroupLayout.PREFERRED_SIZE, 142, javax.swing.
GroupLayout.PREFERRED_SIZE))(layout.createSequentialGroup()(jLabel5)(javax.swing.
LayoutStyle. ComponentPlacement.RELATED, javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)(jTextField4, javax.swing. GroupLayout.PREFERRED_SIZE, 142,
javax.swing.
GroupLayout.PREFERRED_SIZE))(layout.createSequentialGroup()(jLabel4)(javax.swing.
LayoutStyle. ComponentPlacement.RELATED, 36, Short.MAX_VALUE)(jTextField3,
javax.swing. GroupLayout.PREFERRED_SIZE, 142, javax.swing.
GroupLayout.PREFERRED_SIZE)))(27, 27, 27))(layout.createSequentialGroup()(51,
51, 51)(jButton1)(29, 29, 29)(jButton2)(javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()(20, 20,
20)(layout.createParallelGroup (javax.swing. GroupLayout.
Alignment.BASELINE)(jTextField1, javax.swing. GroupLayout.PREFERRED_SIZE,
javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel1))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.BASELINE)(jTextField2, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel2))(javax.swing. LayoutStyle.
ComponentPlacement.UNRELATED)(layout.createParallelGroup (javax.swing.
GroupLayout. Alignment.BASELINE)(jTextField3, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel4))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.BASELINE)(jTextField4, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel5))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout.
Alignment.BASELINE)(jButton1)(jButton2))(javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
();
} //
</editor-fold>
void
jButton1ActionPerformed (java.awt.event. ActionEvent evt) {id_txt =
jTextField1.getText();id = Integer.parseInt (id_txt);name =
jTextField2.getText();tech = jTextField3.getText();opis =
jTextField4.getText();prov1 = id_txt.compareTo(«»);prov2 =
name.compareTo(«»);prov3 = tech.compareTo(«»);prov4 =
opis.compareTo(«»);(prov1!=0 && prov2!=0 && prov3!=0 &&
prov4!=0)
{(id, name, tech,
opis);.showMessageDialog (null, «Данные были добавлены»);
}{JOptionPane.showMessageDialog
(null, «Заполните все поля»);}
// TODO add your
handling code here:
}
void
jButton2ActionPerformed (java.awt.event. ActionEvent evt) {.setVisible(false);
// TODO add your handling code here:
}void Add (int id,
String name, String tech, String opis)
{
{.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn = DriverManager.getConnection
(«jdbc:odbc:mydb», connInfo);s = conn.prepareStatement («INSERT INTO Марки_авто
(Id_авто_характеристики, Наименование, Тех_характеристики, Описание)\n» +
«VALUES
(?,?,?,?);»);.setInt (1, id);.setString (2, name);.setString (3,
tech);.setString (4, opis);.executeUpdate();.close();.close();
}(Exception ex)
{.out.println(ex);
}
}
/**
* @param args the
command line arguments
*/static void main
(String args[]) {
/* Set the Nimbus look
and feel */
// <editor-fold
defaultstate= «collapsed» desc=» Look and feel setting code (optional) «>
/* If Nimbus (introduced
in Java SE 6) is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/{(javax.swing.UIManager.
LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels())
{(«Nimbus».equals (info.getName())) {.swing.UIManager.setLookAndFeel
(info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(Table1Dob.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(InstantiationException ex) {.util.logging. Logger.getLogger
(Table1Dob.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(Table1Dob.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(Table1Dob.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run()
{Table1Dob().setVisible(true);
}
});
}
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JButton
jButton2;javax.swing.JLabel jLabel1;javax.swing.JLabel
jLabel2;javax.swing.JLabel jLabel3;javax.swing.JLabel
jLabel4;javax.swing.JLabel jLabel5;javax.swing.JTextField
jTextField1;javax.swing.JTextField jTextField2;javax.swing.JTextField jTextField3;javax.swing.JTextField
jTextField4;
// End of variables
declaration
Приложение Г
Исходный код формы
«Удаление марки автомобиля»
import java.sql.
Connection;java.sql. DriverManager;java.sql. PreparedStatement;java.sql.
ResultSet;java.sql. Statement;java.util. Properties;javax.swing.JOptionPane;
* @author User
*/class Table1Del
extends javax.swing.JFrame {Table1Del() {();();
}
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JButton();= new javax.swing.JLabel();= new javax.swing.JButton();=
new javax.swing.JComboBox();
(«Удаление»);
jButton1.setText («Удалить данные из таблицы»);
jButton1.addActionListener
(new java.awt.event. ActionListener() {void actionPerformed (java.awt.event.
ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Выберите
наименование автомобиля»);
.setText
(«Отмена»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.swing. GroupLayout
layout = new javax.swing. GroupLayout
(getContentPane());().setLayout(layout);.setHorizontalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()(layout.createParallelGroup
(javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()(21, 21, 21)(jButton1)(33, 33,
33)(jButton2)(0, 64,
Short.MAX_VALUE))(layout.createSequentialGroup()()(jLabel1)(18, 18,
18)(jComboBox1, 0, javax.swing. GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))())
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.BASELINE)(jLabel1)(jComboBox1, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout.
Alignment.BASELINE)(jButton1)(jButton2))(javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
();
} //
</editor-fold>
void
jButton1ActionPerformed (java.awt.event. ActionEvent evt) {name =
(jComboBox1.getSelectedItem()).toString();(name);.showMessageDialog (null,
«Данные были удалены»); // TODO add your handling code here:
}
void
jButton2ActionPerformed (java.awt.event. ActionEvent evt) {.setVisible(false);
// TODO add your handling code here:
}void Del (String name)
{
{.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn =
DriverManager.getConnection («jdbc:odbc:mydb», connInfo);s =
conn.prepareStatement («DELETE FROM Марки_авто WHERE (Наименование
=?);»);.setString (1, name);.executeUpdate();.close();.close();
}(Exception ex)
{.out.println(ex);.showMessageDialog
(null, «Не удалось подключиться к базе данных»);
}
}void Search()
{
{count = 0;.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn =
DriverManager.getConnection («jdbc:odbc:mydb», connInfo);s =
conn.createStatement();res = s.executeQuery («SELECT * FROM
Марки_авто»);(res.next())
{++;
}res1=s.executeQuery
(«SELECT * FROM Марки_авто»);(int i=0; i<count; i++)
{.next();.addItem
(res1.getString(2));.setSelectedIndex(i);
}.close();.close();
}(Exception ex)
{.out.println(ex);.showMessageDialog
(null, «Не удалось подключиться к базе данных»);
}
}{(javax.swing.UIManager.
LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels()) {(«Nimbus».equals
(info.getName())) {.swing.UIManager.setLookAndFeel (info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(Table1Del.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch (InstantiationException
ex) {.util.logging. Logger.getLogger (Table1Del.class.getName()).log
(java.util.logging. Level.SEVERE, null, ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(Table1Del.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(Table1Del.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run()
{Table1Del().setVisible(true);
}
});
}
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JButton
jButton2;javax.swing.JComboBox jComboBox1;javax.swing.JLabel jLabel1;
// End of variables
declaration
}
Приложение Д
Исходный код формы
«Изменение марки автомобиля»
import
java.sql.*;java.util.*;javax.swing.*;javax.swing.table.*;
/**
*
* @author User
*/class Table1Izm
extends javax.swing.JFrame {
/**
* Creates new form
Table1Izm
*/Table1Izm() {();();
}void Search()
{
{count = 0;.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn =
DriverManager.getConnection («jdbc:odbc:mydb», connInfo);s =
conn.createStatement();res = s.executeQuery («SELECT * FROM
Марки_авто»);(res.next())
{++;
}res1=s.executeQuery
(«SELECT * FROM Марки_авто»);(int i=0; i<count; i++)
{.next();.addItem
(res1.getString(2));.setSelectedIndex(i);
}.close();.close();
}(Exception ex)
{.out.println(ex);.showMessageDialog
(null, «Не удалось подключиться к базе данных»);
}
}
/**
* This method is called
from within the constructor to initialize the form.
* WARNING: Do NOT modify
this code. The content of this method is always
* regenerated by the
Form Editor.
*/
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JButton();= new javax.swing.JTextField();= new
javax.swing.JTextField();= new javax.swing.JTextField();= new
javax.swing.JTextField();= new javax.swing.JComboBox();= new
javax.swing.JLabel();= new javax.swing.JLabel();= new javax.swing.JLabel();=
new javax.swing.JLabel();= new javax.swing.JLabel();= new
javax.swing.JButton();
1.setText («Изменить данные в
таблице»);
jButton1.addActionListener
(new java.awt.event. ActionListener() {void actionPerformed (java.awt.event.
ActionEvent evt) {ActionPerformed(evt);
}
});
.setText («Выберите
наименование автомобиля»);
.setText («Id автомобиля»);
jLabel3.setText
(«Наименование»);
4.setText («Технические
характеристики»);
jLabel5.setText («Описание»);
jButton2.setText
(«Отмена»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.swing. GroupLayout
layout = new javax.swing. GroupLayout
(getContentPane());().setLayout(layout);.setHorizontalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(layout.createParallelGroup
(javax.swing. GroupLayout.
Alignment.LEADING)(jLabel1)(layout.createSequentialGroup()(15, 15,
15)(layout.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(jLabel2)(jLabel4)(jLabel3)(jLabel5))))(18, 18,
18)(layout.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(jTextField3)(jTextField2)(jTextField1)(jComboBox1, 0, 140,
Short.MAX_VALUE)(jTextField4))(44, 44, 44))(layout.createSequentialGroup()(37,
37, 37)(jButton1)(18, 18, 18)(jButton2)(javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(javax.swing. GroupLayout. Alignment.TRAILING,
layout.createSequentialGroup()(20, 20, 20)(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.BASELINE)(jComboBox1, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel1))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.BASELINE)(jTextField1, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel2))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.BASELINE)(jTextField2, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel3))(javax.swing. LayoutStyle.
ComponentPlacement.UNRELATED)(layout.createParallelGroup (javax.swing.
GroupLayout. Alignment.LEADING)(jTextField3, javax.swing.
GroupLayout.PREFERRED_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel4))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.BASELINE)(jTextField4, javax.swing. GroupLayout.PREFERRED_SIZE,
javax.swing. GroupLayout.DEFAULT_SIZE, javax.swing.
GroupLayout.PREFERRED_SIZE)(jLabel5))(18, 18, 18)(layout.createParallelGroup
(javax.swing. GroupLayout.
Alignment.BASELINE)(jButton1)(jButton2))(javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
();
} //
</editor-fold>
void
jButton1ActionPerformed (java.awt.event. ActionEvent evt) {
{id = Integer.parseInt
(jTextField1.getText());name = jTextField2.getText();tech =
jTextField3.getText();opis = jTextField4.getText();n1 = String.valueOf
(jComboBox1.getSelectedItem());prov2 = name.compareTo(«»);prov3 =
tech.compareTo(«»);prov4 = opis.compareTo(«»);(prov2!=0 && prov3!=0
&& prov4!=0)
{.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn =
DriverManager.getConnection («jdbc:odbc:mydb», connInfo);s =
conn.prepareStatement («UPDATE Марки_авто SET Id_авто_характеристики =?,
Наименование =?, Тех_характеристики =?, Описание =?\n» +
«WHERE (((Наименование)=?));»);.setInt
(1, id);.setString (2, name);.setString (3, tech);.setString (4,
opis);.setString (5, n1);.executeUpdate();.close();.close();.showMessageDialog
(null, «Данные были отредактированы»);
}{JOptionPane.showMessageDialog
(null, «Поля не должны быть пустыми»);}
}(Exception ex)
{.out.println(ex);.showMessageDialog (null, «Не удалось подключиться к базе данных»);
}
// TODO add your
handling code here:
}
void
jButton2ActionPerformed (java.awt.event. ActionEvent evt) {.setVisible(false);
// TODO add your handling code here:
}
/**
* @param args the
command line arguments
*/static void main
(String args[]) {
/* Set the Nimbus look
and feel */
// <editor-fold
defaultstate= «collapsed» desc=» Look and feel setting code (optional) «>
/* If Nimbus (introduced
in Java SE 6) is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/{(javax.swing.UIManager.
LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels())
{(«Nimbus».equals (info.getName())) {.swing.UIManager.setLookAndFeel
(info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(Table1Izm.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(InstantiationException ex) {.util.logging. Logger.getLogger
(Table1Izm.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(Table1Izm.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(Table1Izm.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run()
{Table1Izm().setVisible(true);
}
});
}
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JButton
jButton2;javax.swing.JComboBox jComboBox1;javax.swing.JLabel
jLabel1;javax.swing.JLabel jLabel2;javax.swing.JLabel
jLabel3;javax.swing.JLabel jLabel4;javax.swing.JLabel
jLabel5;javax.swing.JTextField jTextField1;javax.swing.JTextField
jTextField2;javax.swing.JTextField jTextField3;javax.swing.JTextField jTextField4;
// End of variables
declaration
}
Приложение Ж
Исходный код формы
«Информация о прокате»
import java.sql.
Connection;java.sql. DriverManager;java.sql. ResultSet;java.sql.
Statement;java.util. Properties;
class Zapros_prokat
extends javax.swing.JFrame {
/**
* Creates new form
Zapros_prokat
*/Zapros_prokat()
{();();
}void Connection()
{
{count = 0;.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn =
DriverManager.getConnection («jdbc:odbc:mydb», connInfo);s =
conn.createStatement();= new
javax.swing.JTable();.setAutoCreateRowSorter(true);.setViewportView(jTable1);klass=s.executeQuery
(«SELECT Марки_авто. Наименование,
Клиенты.Ф.И.О._клиента, Прокат. Дата_выдачи, Прокат. Срок_проката, Прокат.
Дата_возврата\n» +
«FROM Марки_авто INNER JOIN (Автомобили INNER JOIN (Клиенты INNER JOIN Прокат ON Клиенты. Id_клиента = Прокат. Id_клиента) ON Автомобили. Id_автомобиля = Прокат. Id_автомобиля) ON Марки_авто. Id_авто_характеристики =
Автомобили. Id_авто_характеристики;»);
while (klass.next())
{++;
}klass1=s.executeQuery
(«SELECT Марки_авто. Наименование,
Клиенты.Ф.И.О._клиента, Прокат. Дата_выдачи, Прокат. Срок_проката, Прокат. Дата_возврата\n» +
«FROM Марки_авто INNER JOIN (Автомобили INNER JOIN (Клиенты INNER JOIN Прокат ON Клиенты. Id_клиента = Прокат. Id_клиента) ON Автомобили. Id_автомобиля = Прокат. Id_автомобиля) ON Марки_авто. Id_авто_характеристики =
Автомобили. Id_авто_характеристики;»);
String[] columnNames = {«Наименование автомобиля», «Ф.И.О. клиента», «Дата выдачи
автомобиля», «Срок проката», «Дата возврата автомобиля»};
String[][] data = new
String[count] [1];.setModel (new javax.swing.table. DefaultTableModel (data,
columnNames));(int i=0; i<count; i++)
{.next();.setValueAt
(klass1.getString(1), i, 0);.setValueAt (klass1.getString(2), i, 1);.setValueAt
(klass1.getString(3), i, 2);.setValueAt (klass1.getString(4), i, 3);.setValueAt
(klass1.getString(5), i, 4);
}.close();.close();
}(Exception ex)
{.out.println(ex);
}
}
/**
* This method is called
from within the constructor to initialize the form.
* WARNING: Do NOT modify
this code. The content of this method is always
* regenerated by the
Form Editor.
*/
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JScrollPane();= new javax.swing.JTable();= new
javax.swing.JButton();
(«Запрос на просмотр информации о
прокате»);
jTable1.setModel (new
javax.swing.table. DefaultTableModel (Object [][] {
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null, null}
},String [] {
«Title 1», «Title 2»,
«Title 3», «Title 4»
}
));.setViewportView(jTable1);
.setText
(«Выход»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.swing. GroupLayout
layout = new javax.swing. GroupLayout (getContentPane());().setLayout(layout);.setHorizontalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.LEADING)(jScrollPane1, javax.swing.
GroupLayout.DEFAULT_SIZE, 491, Short.MAX_VALUE)(jButton1, javax.swing.
GroupLayout.DEFAULT_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))())
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(jScrollPane1, javax.swing.
GroupLayout.PREFERRED_SIZE, 154, javax.swing.
GroupLayout.PREFERRED_SIZE)(javax.swing. LayoutStyle.
ComponentPlacement.UNRELATED)(jButton1)(javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
();
} //
</editor-fold>void jButton1ActionPerformed (java.awt.event. ActionEvent
evt) {.setVisible(false); // TODO add your handling code here:
}
/**
* @param args the
command line arguments
*/static void main
(String args[]) {
/* Set the Nimbus look
and feel */
// <editor-fold
defaultstate= «collapsed» desc=» Look and feel setting code (optional) «>
/* If Nimbus (introduced
in Java SE 6) is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/{(javax.swing.UIManager.
LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels())
{(«Nimbus».equals (info.getName())) {.swing.UIManager.setLookAndFeel
(info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(Zapros_prokat.class.getName()).log (java.util.logging. Level.SEVERE, null,
ex);
} catch
(InstantiationException ex) {.util.logging. Logger.getLogger
(Zapros_prokat.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(Zapros_prokat.class.getName()).log (java.util.logging. Level.SEVERE, null,
ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(Zapros_prokat.class.getName()).log (java.util.logging. Level.SEVERE, null,
ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run()
{Zapros_prokat().setVisible(true);
}
});
}
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JScrollPane
jScrollPane1;javax.swing.JTable jTable1;
// End of variables
declaration
}
Приложение И
Исходный код формы
«Просмотр выполненных услуг»
import java.sql.
Connection;java.sql. DriverManager;java.sql. ResultSet;java.sql.
Statement;java.util. Properties;
/*
* To change this license
header, choose License Headers in Project Properties.
* To change this
template file, choose Tools | Templates
* and open the template
in the editor.
*/
/**
*
* @author User
*/class
Zapros_prosm_avto extends javax.swing.JFrame {
/**
* Creates new form
Zapros_prosm_avto
*/Zapros_prosm_avto()
{();();
}void Connection()
{
{count = 0;.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user», «»);.put
(«password», «»);.put («charSet», «Cp1251»);conn = DriverManager.getConnection
(«jdbc:odbc:mydb», connInfo);s = conn.createStatement();= new
javax.swing.JTable();.setAutoCreateRowSorter(true);.setViewportView(jTable1);klass=s.executeQuery
(«SELECT Марки_авто. Наименование,
Дополнительные_услуги. Наименование\n» +
{++;
}klass1=s.executeQuery
(«SELECT Марки_авто. Наименование,
Дополнительные_услуги. Наименование\n» +
«FROM Дополнительные_услуги INNER JOIN ((Марки_авто INNER JOIN Автомобили ON Марки_авто. Id_авто_характеристики =
Автомобили. Id_авто_характеристики) INNER JOIN Прокат ON Автомобили. Id_автомобиля = Прокат. Id_автомобиля) ON Дополнительные_услуги. Id_услуги = Прокат. Id_услуги;»);
String[] columnNames = {«Наименование автомобиля», «Наименование услуги»};
String[][] data = new String[count] [1];
jTable1.setModel (new
javax.swing.table. DefaultTableModel (data, columnNames));(int i=0; i<count;
i++)
{.next();.setValueAt
(klass1.getString(1), i, 0);.setValueAt (klass1.getString(2), i, 1);
}.close();.close();
}(Exception ex)
{.out.println(ex);
}
}
/**
* This method is called
from within the constructor to initialize the form.
* WARNING: Do NOT modify
this code. The content of this method is always
* regenerated by the
Form Editor.
*/
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JScrollPane();= new javax.swing.JTable();= new
javax.swing.JButton();
(«Запрос на просмотр информации о
услугах»);
jTable1.setModel (new
javax.swing.table. DefaultTableModel (Object [][] {
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null, null}
},String [] {
«Title 1», «Title 2», «Title
3», «Title 4»
}
));.setViewportView(jTable1);
.setText
(«Выход»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
javax.swing. GroupLayout
layout = new javax.swing. GroupLayout
(getContentPane());().setLayout(layout);.setHorizontalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.LEADING)(jScrollPane1, javax.swing.
GroupLayout.DEFAULT_SIZE, 435, Short.MAX_VALUE)(jButton1, javax.swing.
GroupLayout. Alignment.TRAILING, javax.swing. GroupLayout.DEFAULT_SIZE,
javax.swing. GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))())
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(jScrollPane1, javax.swing.
GroupLayout.PREFERRED_SIZE, 132, javax.swing. GroupLayout.PREFERRED_SIZE)(18,
18, 18)(jButton1)(javax.swing. GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
();
} //
</editor-fold>
void
jButton1ActionPerformed (java.awt.event. ActionEvent evt) {.setVisible(false);
// TODO add your handling code here:
}{(javax.swing.UIManager.
LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels())
{(«Nimbus».equals (info.getName())) {.swing.UIManager.setLookAndFeel
(info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(Zapros_prosm_avto.class.getName()).log (java.util.logging. Level.SEVERE, null,
ex);
} catch
(InstantiationException ex) {.util.logging. Logger.getLogger
(Zapros_prosm_avto.class.getName()).log (java.util.logging. Level.SEVERE, null,
ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(Zapros_prosm_avto.class.getName()).log (java.util.logging. Level.SEVERE, null,
ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(Zapros_prosm_avto.class.getName()).log (java.util.logging. Level.SEVERE, null,
ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run()
{Zapros_prosm_avto().setVisible(true);
}
});
}
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JScrollPane
jScrollPane1;javax.swing.JTable jTable1;
// End of variables
declaration
}
Приложение К
Исходный код формы
«Просмотр цены за прокат»
import java.sql.
Connection;java.sql. DriverManager;java.sql. ResultSet;java.sql.
Statement;java.util. Properties;
class Zapr_cen extends
javax.swing.JFrame {Zapr_cen() {();();
}void Connection()
{
{count = 0;.forName
(«sun.jdbc.odbc. JdbcOdbcDriver»);connInfo = new Properties();.put («user»,
«»);.put («password», «»);.put («charSet», «Cp1251»);conn =
DriverManager.getConnection («jdbc:odbc:mydb», connInfo);s =
conn.createStatement();= new
javax.swing.JTable();.setAutoCreateRowSorter(true);.setViewportView(jTable1);klass=s.executeQuery
(«SELECT Клиенты.Ф.И.О._клиента, Марки_авто. Наименование,
Марки_авто. Тех_характеристики, Автомобили. Цена_дня_проката, Прокат.
Срок_проката, [Автомобили]! [Цена_дня_проката]*[Прокат]! [Срок_проката] AS Выражение1\n» +
«FROM Марки_авто INNER JOIN (Автомобили INNER JOIN (Дополнительные_услуги INNER JOIN (Клиенты INNER JOIN Прокат ON Клиенты. Id_клиента = Прокат. Id_клиента) ON Дополнительные_услуги. Id_услуги = Прокат. Id_услуги) ON Автомобили. Id_автомобиля = Прокат. Id_автомобиля) ON Марки_авто. Id_авто_характеристики =
Автомобили. Id_авто_характеристики;»);
while (klass.next())
{
count++;
}
ResultSet klass1=s.executeQuery («SELECT Клиенты.Ф.И.О._клиента, Марки_авто. Наименование, Марки_авто.
Тех_характеристики, Автомобили. Цена_дня_проката, Прокат. Срок_проката,
[Автомобили]! [Цена_дня_проката]*[Прокат]! [Срок_проката] AS Выражение1\n» +
«FROM Марки_авто INNER JOIN (Автомобили INNER JOIN (Дополнительные_услуги INNER JOIN (Клиенты INNER JOIN Прокат ON Клиенты. Id_клиента = Прокат. Id_клиента) ON Дополнительные_услуги. Id_услуги = Прокат. Id_услуги) ON Автомобили. Id_автомобиля = Прокат. Id_автомобиля) ON Марки_авто. Id_авто_характеристики =
Автомобили. Id_авто_характеристики;»);
String[] columnNames = {«Ф.И.О. клиента», «Наименование автомобиля», «Технические
характеристики», «Цена дня проката», «Срок проката», «Итого за прокат»};
String[][] data = new
String[count] [1];.setModel (new javax.swing.table. DefaultTableModel (data,
columnNames));(int i=0; i<count; i++)
{.next();.setValueAt
(klass1.getString(1), i, 0);.setValueAt (klass1.getString(2), i, 1);.setValueAt
(klass1.getString(3), i, 2);.setValueAt (klass1.getString(4), i, 3);.setValueAt
(klass1.getString(5), i, 4);.setValueAt (klass1.getString(6), i, 5);
}.close();.close();
}(Exception ex)
{.out.println(ex);
}
}
@SuppressWarnings
(«unchecked»)
// <editor-fold
defaultstate= «collapsed» desc= «Generated Code»>void initComponents() {
= new
javax.swing.JScrollPane();= new javax.swing.JTable();= new
javax.swing.JButton();
(«Запрос на просмотр информации о
цене за все дни»);
jTable1.setModel (new
javax.swing.table. DefaultTableModel (Object [][] {
{null, null, null,
null},
{null, null, null,
null},
{null, null, null,
null},
{null, null, null, null}
},String [] {
«Title 1», «Title 2»,
«Title 3», «Title 4»
}
));.setViewportView(jTable1);
.setText
(«Выход»);.addActionListener (new java.awt.event. ActionListener() {void
actionPerformed (java.awt.event. ActionEvent evt) {ActionPerformed(evt);
}
});
.swing. GroupLayout
layout = new javax.swing. GroupLayout
(getContentPane());().setLayout(layout);.setHorizontalGroup (.createParallelGroup
(javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()()(layout.createParallelGroup
(javax.swing. GroupLayout. Alignment.LEADING)(jButton1, javax.swing.
GroupLayout.DEFAULT_SIZE, javax.swing. GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)(jScrollPane1, javax.swing. GroupLayout.DEFAULT_SIZE, 703,
Short.MAX_VALUE))())
);.setVerticalGroup
(.createParallelGroup (javax.swing. GroupLayout.
Alignment.LEADING)(layout.createSequentialGroup()(jScrollPane1, javax.swing.
GroupLayout.PREFERRED_SIZE, 161, javax.swing.
GroupLayout.PREFERRED_SIZE)(javax.swing. LayoutStyle.
ComponentPlacement.RELATED, 15, Short.MAX_VALUE)(jButton1)())
);
();
} //
</editor-fold>
void
jButton1ActionPerformed (java.awt.event. ActionEvent evt) {.setVisible(false);
// TODO add your handling code here:
}static void main
(String args[]) {{(javax.swing.UIManager. LookAndFeelInfo info:
javax.swing.UIManager.getInstalledLookAndFeels()) {(«Nimbus».equals
(info.getName())) {.swing.UIManager.setLookAndFeel (info.getClassName());;
}
}
} catch
(ClassNotFoundException ex) {.util.logging. Logger.getLogger
(Zapr_cen.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(InstantiationException ex) {.util.logging. Logger.getLogger
(Zapr_cen.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch
(IllegalAccessException ex) {.util.logging. Logger.getLogger
(Zapr_cen.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
} catch (javax.swing.
UnsupportedLookAndFeelException ex) {.util.logging. Logger.getLogger
(Zapr_cen.class.getName()).log (java.util.logging. Level.SEVERE, null, ex);
}
// </editor-fold>
/* Create and display
the form */.awt. EventQueue.invokeLater (new Runnable() {void run()
{Zapr_cen().setVisible(true);
}
});
}
// Variables declaration
- do not modifyjavax.swing.JButton jButton1;javax.swing.JScrollPane
jScrollPane1;javax.swing.JTable jTable1;
// End of variables
declaration
}