Advertisement
nikitos569

Untitled

May 16th, 2018
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.35 KB | None | 0 0
  1. package the_GUI;
  2.  
  3. import net.proteanit.sql.DbUtils;
  4.  
  5. import javax.swing.*;
  6. import java.awt.*;
  7. import java.awt.event.ActionEvent;
  8. import java.awt.event.ActionListener;
  9. import java.awt.event.ItemEvent;
  10. import java.awt.event.ItemListener;
  11. import java.sql.*;
  12. import java.util.ArrayList;
  13.  
  14. public class Gooey
  15. {
  16. private static final String user = "root";
  17. private static final String password = "";
  18. private static String url = "jdbc:mysql://localhost:3306/test";
  19. private static Connection con;
  20. private static Statement stmt;
  21. private static ResultSet rs;
  22. String query = new String();
  23. String selectedtext;
  24. ArrayList<String> rownames = new ArrayList<String>();
  25. ArrayList<String> tables = new ArrayList<String>();
  26. private JPanel panel1;
  27. private JButton executeSQLQueryButton;
  28. private JTextField textField1;
  29. private JTable table1;
  30. private JTextField availableTablesTextField;
  31. private JComboBox comboBox6;
  32. private JComboBox comboBox4;
  33. private JComboBox comboBox3;
  34. private JComboBox comboBox2;
  35. private JComboBox comboBox1;
  36. private JComboBox comboBox5;
  37.  
  38. public Gooey()
  39. {
  40. rownames.add("");
  41. try //populate tabelle combo box
  42. {
  43. query = "show tables";
  44. con = DriverManager.getConnection(url, user, password);
  45. stmt = con.createStatement();
  46. rs = stmt.executeQuery(query);
  47. DatabaseMetaData meta = con.getMetaData();
  48. ResultSet rs1 = meta.getTables(null, null, null, new String[]{"TABLE"});
  49. while (rs1.next())
  50. {
  51. tables.add(rs1.getString("TABLE_NAME"));
  52. //availableTablesTextField.setText(availableTablesTextField.getText() + rs1.getString("TABLE_NAME") + ", ");
  53. //System.out.println(rs1.getString("TABLE_NAME"));
  54. }
  55. System.out.println(tables);
  56. comboBox3.setModel(new DefaultComboBoxModel(tables.toArray()));
  57. } catch (Exception ex)
  58. {
  59. JOptionPane.showMessageDialog(null, ex.toString());
  60. }
  61.  
  62. try
  63. {
  64. System.out.println(tables.get(0));
  65. query = "select * from " + tables.get(0);
  66. con = DriverManager.getConnection(url, user, password);
  67. stmt = con.createStatement();
  68. rs = stmt.executeQuery(query);
  69. table1.setModel(DbUtils.resultSetToTableModel(rs));
  70. } catch (Exception ex)
  71. {
  72. JOptionPane.showMessageDialog(null, ex.toString());
  73. }
  74.  
  75. query = "SELECT * FROM " + tables.get(0);
  76. try
  77. {
  78. con = DriverManager.getConnection(url, user, password);
  79. stmt = con.createStatement();
  80. rs = stmt.executeQuery(query);
  81. //populate
  82. ResultSetMetaData rsMetaData = rs.getMetaData();
  83. int numberOfColumns = rsMetaData.getColumnCount();
  84. for (int i = 1; i <= numberOfColumns; i++)
  85. {
  86. System.out.println("column MetaData ");
  87. System.out.println("column number " + i);
  88. System.out.println(rsMetaData.getColumnName(i));
  89. rownames.add(rsMetaData.getColumnName(i));
  90. }
  91. comboBox1.setModel(new DefaultComboBoxModel(rownames.toArray()));
  92. comboBox2.setModel(new DefaultComboBoxModel(rownames.toArray()));
  93. comboBox4.setModel(new DefaultComboBoxModel(rownames.toArray()));
  94. comboBox5.setModel(new DefaultComboBoxModel(rownames.toArray()));
  95. comboBox6.setModel(new DefaultComboBoxModel(rownames.toArray()));
  96. } catch (Exception ex)
  97. {
  98. JOptionPane.showMessageDialog(null, ex.toString());
  99. }
  100.  
  101. executeSQLQueryButton.addActionListener(new ActionListener() //rewrite to work with combo boxes
  102. {
  103. @Override
  104. public void actionPerformed(ActionEvent e)
  105. {
  106. try //get row names
  107. {
  108. query = "select ";
  109. query += comboBox1.getSelectedItem().toString();
  110. if (!comboBox2.getSelectedItem().toString().equals(""))
  111. query += ", " + comboBox2.getSelectedItem().toString();
  112. if (!comboBox4.getSelectedItem().toString().equals(""))
  113. query += ", " + comboBox4.getSelectedItem().toString();
  114. if (!comboBox5.getSelectedItem().toString().equals(""))
  115. query += ", " + comboBox5.getSelectedItem().toString();
  116. if (!comboBox6.getSelectedItem().toString().equals(""))
  117. query += ", " + comboBox6.getSelectedItem().toString();
  118. query += " FROM " + comboBox3.getSelectedItem().toString();
  119. con = DriverManager.getConnection(url, user, password);
  120. stmt = con.createStatement();
  121. rs = stmt.executeQuery(query);
  122. table1.setModel(DbUtils.resultSetToTableModel(rs));
  123. } catch (Exception ex)
  124. {
  125. JOptionPane.showMessageDialog(null, ex.toString());
  126. }
  127. }
  128. });
  129.  
  130. comboBox3.addItemListener(new ItemListener()
  131. {
  132. @Override
  133. public void itemStateChanged(ItemEvent e)
  134. {
  135. if (e.getStateChange() == ItemEvent.SELECTED)
  136. {
  137. //Object item = e.getItem();
  138. selectedtext = comboBox3.getSelectedItem().toString();
  139. query = "SELECT * FROM " + selectedtext;
  140. try
  141. {
  142. con = DriverManager.getConnection(url, user, password);
  143. stmt = con.createStatement();
  144. rs = stmt.executeQuery(query);
  145. //populate
  146. ResultSetMetaData rsMetaData = rs.getMetaData();
  147. int numberOfColumns = rsMetaData.getColumnCount();
  148. rownames.clear();
  149. rownames.add("");
  150. for (int i = 1; i <= numberOfColumns; i++)
  151. {
  152. System.out.println("column MetaData ");
  153. System.out.println("column number " + i);
  154. System.out.println(rsMetaData.getColumnName(i));
  155. rownames.add(rsMetaData.getColumnName(i));
  156. }
  157. comboBox1.setModel(new DefaultComboBoxModel(rownames.toArray()));
  158. comboBox2.setModel(new DefaultComboBoxModel(rownames.toArray()));
  159. comboBox4.setModel(new DefaultComboBoxModel(rownames.toArray()));
  160. comboBox5.setModel(new DefaultComboBoxModel(rownames.toArray()));
  161. comboBox6.setModel(new DefaultComboBoxModel(rownames.toArray()));
  162. } catch (Exception ex)
  163. {
  164. JOptionPane.showMessageDialog(null, ex.toString());
  165. }
  166. }
  167. }
  168. });
  169. }
  170.  
  171. public static void main(String[] args)
  172. {
  173. ArrayList<String> asking = new ArrayList<String>();
  174. //ArrayList asking = new ArrayList();
  175. JFrame frame = new JFrame("App");
  176. try
  177. {
  178. con = DriverManager.getConnection(url, user, password);
  179. DatabaseMetaData meta = con.getMetaData();
  180. ResultSet rs1 = meta.getCatalogs();
  181. while (rs1.next())
  182. {
  183. asking.add(rs1.getString("TABLE_CAT"));
  184. }
  185. } catch (Exception ex)
  186. {
  187. JOptionPane.showMessageDialog(null, ex.toString());
  188. }
  189. String[] options = asking.toArray(new String[0]);
  190. String dbname = (String) JOptionPane.showInputDialog(frame, "Select database", "Select Database", JOptionPane.QUESTION_MESSAGE, null, options, options[0]);
  191. url = "jdbc:mysql://localhost:3306/" + dbname;
  192. frame.setContentPane(new Gooey().panel1);
  193. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  194. frame.pack();
  195. frame.setPreferredSize(new Dimension(1200, 640));
  196. frame.setVisible(true);
  197. }
  198. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement