Advertisement
Guest User

Untitled

a guest
Jun 27th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.59 KB | None | 0 0
  1. package userInterface;
  2.  
  3. import java.awt.*;
  4. import java.awt.event.ActionEvent;
  5. import java.awt.event.ActionListener;
  6. import java.io.File;
  7. import java.sql.Connection;
  8. import java.sql.DriverManager;
  9. import java.sql.PreparedStatement;
  10. import java.sql.ResultSet;
  11.  
  12. import javax.swing.*;
  13. import javax.swing.border.Border;
  14. import javax.swing.event.TableModelEvent;
  15. import javax.swing.event.TableModelListener;
  16. import javax.swing.table.DefaultTableModel;
  17.  
  18. import reu.FileMod;
  19. import reu.ImageSend;
  20. import reu.ColumnAutoSizer;
  21.  
  22. public class TabOne extends JPanel implements ActionListener {
  23. private JButton button1, button2;
  24. public static JTable table;
  25. private ImageSend img;
  26. private JPanel orderPanel;
  27. private Connection connection;
  28. private ResultSet result1, result2, result3, result4;
  29. private String[] teacher, hall, batch, days;
  30.  
  31. public TabOne() {
  32.  
  33. img = new ImageSend();
  34. orderPanel = new JPanel();
  35. button1 = new JButton("Save");
  36. button2 = new JButton("Refresh");
  37. button2.setIcon(img.createImage("/image/update.png"));
  38. button2.setBorderPainted(false);
  39. button2.setFocusPainted(false);
  40. button2.setContentAreaFilled(false);
  41.  
  42. button1.setIcon(img.createImage("/image/small_save.png"));
  43. button1.setBorderPainted(false);
  44. button1.setFocusPainted(false);
  45. button1.setContentAreaFilled(false);
  46. button1.addActionListener(this);
  47. table = new JTable();
  48. createTabOne();
  49.  
  50. }
  51.  
  52. private void createTabOne() {
  53.  
  54. setOrderPanel();
  55.  
  56. setLayout(new BorderLayout());
  57.  
  58. // panel border
  59.  
  60. setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
  61.  
  62. Dimension dim = getPreferredSize();
  63. dim.height = 100;
  64.  
  65. // panel color
  66.  
  67. setBackground(new Color(46, 139, 87));
  68.  
  69. table.setRowHeight(22);
  70. table.setFont(new Font("times new roman", Font.PLAIN, 16));
  71. table.getTableHeader().setFont(
  72. new Font("times new roman", Font.BOLD, 16));
  73. /*
  74. * table.getModel().addTableModelListener(new TableModelListener() {
  75. * public void tableChanged(TableModelEvent e) {
  76. * ColumnAutoSizer.sizeColumnsToFit(table); } });
  77. */
  78. table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
  79. add(new JScrollPane(table), BorderLayout.CENTER);
  80.  
  81. // Table Mod
  82.  
  83. orderPanel.setPreferredSize(dim);
  84. add(orderPanel, BorderLayout.SOUTH);
  85.  
  86. }
  87.  
  88. private void setOrderPanel() {
  89.  
  90. Border inner = BorderFactory.createTitledBorder("Order Section");
  91. Border outer = BorderFactory.createEmptyBorder(5, 5, 5, 5);
  92.  
  93. orderPanel.setBorder(BorderFactory.createCompoundBorder(outer, inner));
  94.  
  95. orderPanel.setLayout(new GridBagLayout());
  96.  
  97. orderPanel.setBackground(new Color(147, 197, 114));
  98.  
  99. GridBagConstraints gc = new GridBagConstraints();
  100.  
  101. gc.weightx = 0;
  102. gc.weighty = 0;
  103. gc.gridx = 1;
  104. gc.gridy = 1;
  105. gc.fill = GridBagConstraints.NONE;
  106.  
  107. button1.setFont(new Font("times new roman", Font.PLAIN, 15));
  108. orderPanel.add(button1, gc);
  109.  
  110. // gc.weightx = 0.5;
  111. // gc.weighty = 0.5;
  112. gc.gridx = 2;
  113. gc.gridy = 1;
  114. button2.setFont(new Font("times new roman", Font.PLAIN, 15));
  115. orderPanel.add(button2, gc);
  116.  
  117. }
  118.  
  119. public void actionPerformed(ActionEvent e) {
  120.  
  121. /*
  122. * JButton ob = (JButton) e.getSource(); FileMod.saveFile();
  123. */
  124.  
  125. exeQuery();
  126. }
  127.  
  128. private void disconnect() throws Exception {
  129. if (connection != null)
  130. connection.close();
  131.  
  132. }
  133.  
  134. private void connect() throws Exception {
  135. Class.forName("com.mysql.jdbc.Driver");
  136.  
  137. String url = "jdbc:mysql://localhost:3306/school";
  138.  
  139. connection = DriverManager.getConnection(url, "root", "");
  140.  
  141. }
  142.  
  143. public void exeQuery() {
  144.  
  145. try {
  146.  
  147. connect();
  148.  
  149. String day, hall, batch, name;
  150.  
  151. DefaultTableModel tableModel;
  152. String[] head = { "Day", "Hall Name", "Batch", "Lecturer Name" };
  153. tableModel = new DefaultTableModel() {
  154. public boolean isCellEditable(int arg0, int arg1) {
  155. return false;
  156. };
  157. };
  158. tableModel.setColumnIdentifiers(head);
  159. table.setModel(tableModel);
  160.  
  161. day = null;
  162. name = null;
  163. hall = null;
  164. batch = null;
  165.  
  166. getTeacher();
  167. getHall();
  168. getBatch();
  169. getDays();
  170.  
  171. while (result4.next()) {
  172.  
  173. day = result4.getString(2);
  174.  
  175. while (result2.next()) {
  176.  
  177. hall = result2.getString(2);
  178.  
  179. if (result3.next()) {
  180. batch = result3.getString(2);
  181. } else {
  182. batch = "null";
  183. }
  184.  
  185. if (result1.next()) {
  186. name = result1.getString(3);
  187. name = name + " " + result1.getString(2);
  188. } else {
  189. name = "null";
  190. }
  191. }
  192.  
  193. tableModel.addRow(new String[] { day, hall, batch, name });
  194. }
  195.  
  196. disconnect();
  197.  
  198. } catch (Exception e) {
  199. // TODO Auto-generated catch block
  200. e.printStackTrace();
  201. }
  202. }
  203.  
  204. public void getTeacher() throws Exception {
  205.  
  206. PreparedStatement search1 = connection
  207. .prepareStatement("select * from lecturer");
  208. result1 = search1.executeQuery();
  209.  
  210. }
  211.  
  212. public void getHall() throws Exception {
  213.  
  214. PreparedStatement search2 = connection
  215. .prepareStatement("select * from hall");
  216. result2 = search2.executeQuery();
  217.  
  218. }
  219.  
  220. public void getBatch() throws Exception {
  221.  
  222. PreparedStatement search3 = connection
  223. .prepareStatement("select * from batch");
  224. result3 = search3.executeQuery();
  225.  
  226. }
  227.  
  228. public void getDays() throws Exception {
  229.  
  230. PreparedStatement search4 = connection
  231. .prepareStatement("select * from day_of_week");
  232. result4 = search4.executeQuery();
  233.  
  234. }
  235.  
  236. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement