Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.sql.*;
- /**
- * Created by Admin on 13.11.2016.
- */
- public class Window extends JFrame implements ActionListener {
- String Code3 = "", Type3 = "", Quantity3 = "", Price3 = "", Year3 = "";
- JPanel panel = new JPanel(new FlowLayout());
- JPanel panelForButtons = new JPanel(new FlowLayout()); //JPanel для кнопок выводит элементы в рядок
- JPanel panelStart = new JPanel();
- JPanel panelLabelTablo = new JPanel();
- JLabel labelCode; // для вывода инфи из БД
- JLabel labelType; // для вывода инфи из БД
- JLabel labelQuantity;
- JLabel labelPrice;
- JLabel labelYear;
- JLabel labelToDo; // выводит все дейстия кнопок
- JTextField field = new JTextField(16); // поле для ввода текаста
- Container containerPane = getContentPane(); // контейнер в который будем добавлять кнопки, label-ы и тп
- JButton start = new JButton("Start");
- JButton button1 = new JButton("Кнопка1");
- JButton button2 = new JButton("Кнопка2");
- JButton button3 = new JButton("Кнопка3");
- JButton button4 = new JButton("Кнопка4");
- JButton button5 = new JButton("Кнопка5");
- JButton button6 = new JButton("Очистить");
- JButton buttonUpCode = new JButton("Добавить в Code");//кнопка для обнавления поля Code таблици tbl1
- Object[][] data = new Object[1][5]; // данные с БД
- private static String tbl1Title = ""; //заголовок таблицы
- //Обьект таблицы
- JTable jTablePeople;
- // JDBC URL, username and password MYSQL server
- private static final String url = "jdbc:mysql://localhost:3306/carsfff";
- private static final String user = "root";
- private static final String password = "root";
- // JDBC varibals for opening and managing connection
- private static Connection con;
- private static Statement stmt;
- private static ResultSet rs;
- public Window(){
- super("Запуск программы");
- setSize(400,100);
- setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
- add(panelStart);
- panelStart.add( start );
- containerPane.add("Center", panelStart);
- setLocationRelativeTo(null);
- start.addActionListener(this);
- setVisible(true);
- }
- public Window(String FieldCode, String FieldType, String FieldQuantity, String FieldPrice, String FieldYear,String Code, String Type, int Quantity, int Price, int Year){
- super( "Таблица " + "\""+Window.tbl1Title+"\"" + " Базы MYSQL from v0.01 to v1.36 " );
- setSize(700, 500); // шырина x высота
- setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
- add(panel); //добавляем JPanel на JFrame
- this.labelCode = new JLabel("*******"); // поле для вывода инфы столбца CODE с таблицы
- this.labelType = new JLabel("*******");
- this.labelQuantity = new JLabel("*******");
- this.labelPrice = new JLabel("*******");
- this.labelYear = new JLabel("*******");
- this.labelToDo = new JLabel("-------");
- panel.add(this.labelCode); //добавляем label на JPanel
- panel.add(this.labelType);
- panel.add(this.labelQuantity);
- panel.add(this.labelPrice);
- panel.add(this.labelYear);
- panelLabelTablo.add(this.labelToDo); //добавляем label табло для вывода действый всех кнопок
- Code3 = Code; // для JLabel с БД
- Type3 = Type;
- Quantity3 = String.valueOf(Quantity);
- Price3 = String.valueOf(Price);
- Year3 = String.valueOf(Year);
- panelForButtons.add( button1 ); // добавляем кнопки на JPanel
- panelForButtons.add( button2 );
- panelForButtons.add( button3 );
- panelForButtons.add( button4 );
- panelForButtons.add( button5 );
- panelForButtons.add( button6 );
- panelForButtons.add(field); // добавил поле ввода на JPanel
- panelForButtons.add( buttonUpCode );
- containerPane.add("North", panel); // добавляем в контейнер panel а с ней вместе Label а так же делаем выравнивание
- containerPane.add("Center", panelForButtons); //добавляем в контейнер групу кнопок(6) и выравниваем их по центру
- containerPane.add("South", panelLabelTablo);
- setLocationRelativeTo(null); // запуск окна JFrame по центру экрана
- //it is a Test
- // Заголовки таблици
- Object[] headers = {FieldCode, FieldType, FieldQuantity, FieldPrice, FieldYear};
- // Массив для таблици
- data = new Object[][]{
- {Code, Type, Quantity, Price, Year}
- };
- jTablePeople = new JTable(data, headers);
- // добавляем панель прокрутки и включаем ее в состав таблици
- JScrollPane jScrollPane = new JScrollPane(jTablePeople);
- // Утанавливаем размери прокручиваемой области
- jTablePeople.setPreferredScrollableViewportSize(new Dimension(450, 550));
- // добавляем таблицу в контейнер
- containerPane.add("East", jScrollPane);
- setVisible(true);
- /* Сушатели кнопок */
- button1.addActionListener( this );
- button2.addActionListener( this );
- button3.addActionListener( this );
- button4.addActionListener( this );
- button5.addActionListener( this );
- button6.addActionListener( this );
- buttonUpCode.addActionListener( this );
- }
- public void actionPerformed(ActionEvent event){ // обработчики событий
- if (event.getSource() == button1){
- this.labelCode.setText("");
- this.labelCode.setText(Code3);
- // button1.setEnabled(false);
- this.labelToDo.setText(event.getActionCommand()); //выводим команду в поле
- }
- else if (event.getSource() == button2){
- this.labelType.setText("");
- this.labelType.setText(Type3);
- this.labelToDo.setText(event.getActionCommand());
- }
- else if (event.getSource() == button3){
- this.labelQuantity.setText("");
- this.labelQuantity.setText(Quantity3);
- this.labelToDo.setText(event.getActionCommand());
- }
- else if (event.getSource() == button4){
- this.labelPrice.setText("");
- this.labelPrice.setText(Price3);
- this.labelToDo.setText(event.getActionCommand());
- }
- else if (event.getSource() == button5){
- this.labelYear.setText("");
- this.labelYear.setText(Year3);
- this.labelToDo.setText(event.getActionCommand());
- }
- else if (event.getSource() == button6){
- this.labelCode.setText("_");
- this.labelType.setText("_");
- this.labelQuantity.setText("_");
- this.labelPrice.setText("_");
- this.labelYear.setText("_");
- this.labelToDo.setText(event.getActionCommand());
- }
- else if (event.getSource() == start){
- ViewData();
- }
- else if (event.getSource() == buttonUpCode){
- labelToDo.setText(UpdateData());
- }
- }
- // метод лоя просмотр данных с таблици tbl1
- Object ViewData(){
- String Code = "", Type = "", FieldCode = "", FieldType = "",
- FieldQuantity = "", FieldPrice = "", FieldYear = "";
- int Quantity = 0, Price = 0, Year = 0;
- String query = "select * from tbl1";
- String queryCode = "show fields from tbl1 where Field='CODE'";
- String queryType = "show fields from tbl1 where Field='TYPE'";
- String queryQuantity = "show fields from tbl1 where Field='QUANTITY'";
- String queryPrice = "show fields from tbl1 where Field='PRICE'";
- String queryYear = "show fields from tbl1 where Field='YEAR'";
- String queryTitleTable = "show tables";
- try {
- con = DriverManager.getConnection(url, user, password);
- stmt = con.createStatement();
- rs = stmt.executeQuery(query);
- while (rs.next()){
- Code = rs.getString(1);
- Type = rs.getString(2);
- Quantity = rs.getInt(3);
- Price = rs.getInt(4);
- Year = rs.getInt(5);
- }
- rs = stmt.executeQuery(queryCode);
- while (rs.next()){
- FieldCode = rs.getString(1);
- }
- rs = stmt.executeQuery(queryType);
- while (rs.next()){
- FieldType = rs.getString(1);
- }
- rs = stmt.executeQuery(queryQuantity);
- while (rs.next()){
- FieldQuantity = rs.getString(1);
- }
- rs = stmt.executeQuery(queryPrice);
- while (rs.next()){
- FieldPrice = rs.getString(1);
- }
- rs = stmt.executeQuery(queryYear);
- while (rs.next()){
- FieldYear = rs.getString(1);
- }
- rs = stmt.executeQuery(queryTitleTable);
- while (rs.next()){
- Window.tbl1Title = rs.getString(1);
- }
- }catch (SQLException sqlEx){
- sqlEx.printStackTrace();
- }finally {
- try{con.close();} catch (SQLException se){}
- try{stmt.close();} catch (SQLException se){}
- try{rs.close();} catch (SQLException se){}
- }
- Window obWindow = new Window(FieldCode,FieldType, FieldQuantity, FieldPrice, FieldYear ,Code, Type, Quantity, Price, Year);
- return obWindow;
- }
- // обновление значений в таблице tbl1
- String UpdateData(){
- String queryUpdate = "update tbl1 set CODE=".concat("'" + field.getText() + "'");// запрос для получения текста
- // с JTextField
- try {
- con = DriverManager.getConnection(url, user, password);
- stmt = con.createStatement();
- stmt.executeUpdate(queryUpdate); // обновляем в поле CODE
- }catch (SQLException sqlEx){
- sqlEx.printStackTrace();
- }finally {
- try{con.close();} catch (SQLException se){}
- try{stmt.close();} catch (SQLException se){}
- try{rs.close();} catch (SQLException se){}
- }
- return "Запись добавлена в поле \" CODE \"";
- }
- public static void main(String[] args){
- Window obLittle = new Window();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement