Advertisement
Guest User

Untitled

a guest
Jul 29th, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.01 KB | None | 0 0
  1. public class ViewSubject extends Application {
  2.  
  3. private final TableView<Subject> table = new TableView<>();
  4. private final ObservableList<Subject> data
  5. = FXCollections.observableArrayList();
  6. final HBox hb = new HBox();
  7.  
  8. private Connection connect = null;
  9. private Statement statement = null;
  10. private final PreparedStatement preparedStatement = null;
  11. private ResultSet resultSet = null;
  12.  
  13. public static void main(String[] args) {
  14. launch(args);
  15. }
  16.  
  17. @Override
  18. public void start(Stage stage) throws ClassNotFoundException, SQLException {
  19.  
  20. Scene scene = new Scene(new Group());
  21. stage.setTitle("Add Subject");
  22. stage.setWidth(650);
  23. stage.setHeight(550);
  24. stage.setResizable(false);
  25.  
  26. final Label label = new Label("Subject Details");
  27. label.setFont(new Font("Calibri", 20));
  28.  
  29. TableColumn sub = new TableColumn("Subject Name");
  30. sub.setMinWidth(350);
  31. sub.setCellValueFactory(
  32. new PropertyValueFactory<Subject, String>("subName"));
  33. sub.setCellFactory(TextFieldTableCell.forTableColumn());
  34. sub.setOnEditCommit(
  35. new EventHandler<TableColumn.CellEditEvent<Subject, String>>() {
  36. @Override
  37. public void handle(TableColumn.CellEditEvent<Subject, String> t) {
  38. ((Subject) t.getTableView().getItems().get(
  39. t.getTablePosition().getRow())).setSubName(t.getNewValue());
  40. }
  41. }
  42. );
  43.  
  44. TableColumn code = new TableColumn("Subject Code");
  45. code.setMinWidth(130);
  46. code.setCellValueFactory(
  47. new PropertyValueFactory<Subject, String>("subCode"));
  48. code.setCellFactory(TextFieldTableCell.forTableColumn());
  49. code.setCellFactory(TextFieldTableCell.forTableColumn());
  50. code.setOnEditCommit(
  51. new EventHandler<TableColumn.CellEditEvent<Subject, String>>() {
  52. @Override
  53. public void handle(TableColumn.CellEditEvent<Subject, String> t) {
  54. ((Subject) t.getTableView().getItems().get(
  55. t.getTablePosition().getRow())).setSubCode(t.getNewValue());
  56. }
  57. }
  58. );
  59.  
  60. TableColumn rev = new TableColumn("Revision");
  61. rev.setMinWidth(130);
  62. rev.setCellValueFactory(
  63. new PropertyValueFactory<Subject, String>("subRev"));
  64. rev.setCellFactory(TextFieldTableCell.forTableColumn());
  65. rev.setCellFactory(TextFieldTableCell.forTableColumn());
  66. rev.setOnEditCommit(
  67. new EventHandler<TableColumn.CellEditEvent<Subject, String>>() {
  68. @Override
  69. public void handle(TableColumn.CellEditEvent<Subject, String> t) {
  70. ((Subject) t.getTableView().getItems().get(
  71. t.getTablePosition().getRow())).setSubCode(t.getNewValue());
  72. }
  73. }
  74. );
  75.  
  76. table.setItems(data);
  77. table.getColumns().addAll(sub, code, rev);
  78.  
  79. final VBox vbox = new VBox();
  80. vbox.setSpacing(10);
  81. vbox.setPadding(new Insets(20, 20, 20, 20));
  82. vbox.getChildren().addAll(label, table);
  83.  
  84. ((Group) scene.getRoot()).getChildren().addAll(vbox);
  85.  
  86. stage.setScene(scene);
  87. stage.show();
  88.  
  89. try {
  90. Class.forName("com.mysql.jdbc.Driver");
  91. connect = DriverManager
  92. .getConnection("jdbc:mysql://localhost:3306/project?"
  93. + "user=root&password=virus");
  94. statement = connect.createStatement();
  95.  
  96. resultSet = statement
  97. .executeQuery("select * from subject");
  98. writeResultSet(resultSet);
  99. } catch (ClassNotFoundException | SQLException e) {
  100. throw e;
  101. } finally {
  102. close();
  103. }
  104.  
  105. }
  106.  
  107. private void writeResultSet(ResultSet resultSet) throws SQLException {
  108.  
  109. while (resultSet.next()) {
  110.  
  111. String subname = resultSet.getString("subname");
  112. String code = resultSet.getString("subcode");
  113. String rev = resultSet.getString("subrev");
  114.  
  115. data.add(new Subject(subname, code, rev));
  116. }
  117. }
  118.  
  119. private void close() {
  120. try {
  121. if (resultSet != null) {
  122. resultSet.close();
  123. }
  124. if (statement != null) {
  125. statement.close();
  126. }
  127. if (connect != null) {
  128. connect.close();
  129. }
  130. } catch (SQLException e) {
  131.  
  132. }
  133. }
  134. }
  135.  
  136. public class Subject {
  137.  
  138. private final SimpleStringProperty sub;
  139. private final SimpleStringProperty code;
  140. private final SimpleStringProperty rev;
  141.  
  142. Subject(String subName, String subCode, String subRev) {
  143. this.sub = new SimpleStringProperty(subName);
  144. this.code = new SimpleStringProperty(subCode);
  145. this.rev = new SimpleStringProperty(subRev);
  146. }
  147.  
  148. public String getSubName() {
  149. return sub.get();
  150. }
  151.  
  152. public void setSubName(String subName) {
  153. sub.set(subName);
  154. }
  155.  
  156. public String getSubCode() {
  157. return code.get();
  158. }
  159.  
  160. public void setSubCode(String subCode) {
  161. code.set(subCode);
  162. }
  163.  
  164. public String getSubRev() {
  165. return rev.get();
  166. }
  167.  
  168. public void setSubRev(String subRev) {
  169. rev.set(subRev);
  170. }
  171. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement