Advertisement
Guest User

Untitled

a guest
Jan 19th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.77 KB | None | 0 0
  1. package sample;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.Statement;
  7. import javafx.application.Application;
  8. import javafx.geometry.Insets;
  9. import javafx.geometry.Pos;
  10. import javafx.scene.Scene;
  11. import javafx.scene.control.Button;
  12. import javafx.scene.control.TextField;
  13. import javafx.scene.layout.BorderPane;
  14. import javafx.scene.layout.FlowPane;
  15. import javafx.scene.layout.HBox;
  16. import javafx.scene.text.Text;
  17. import javafx.stage.Stage;
  18.  
  19. public class JdbcLogin extends Application {
  20.  
  21. private Button viewButton = new Button("View");
  22. private Button insertButton = new Button("Insert");
  23. private Button clearButton = new Button("Clear");
  24.  
  25. private TextField idField = new TextField();
  26. private TextField firstNameField = new TextField();
  27. private TextField lastNameField = new TextField();
  28. private TextField cityField = new TextField();
  29. private TextField birthyearField = new TextField();
  30.  
  31. private Text statusText = new Text();
  32.  
  33. public void actions() throws Exception {
  34. viewButton.setOnAction(e -> {
  35. try {
  36. String useDatabaseQuery = "USE Fiszki;";
  37. String viewQuery = "SELECT * FROM Persons WHERE ID = '" + idField.getText() + "'";
  38.  
  39. Statement statement = getConnection().createStatement();
  40. statement.executeUpdate(useDatabaseQuery);
  41.  
  42. ResultSet resultSet = statement.executeQuery(viewQuery);
  43.  
  44. while (resultSet.next()) {
  45. int ID = resultSet.getInt("ID");
  46. String firstName = resultSet.getString("firstName");
  47. String lastName = resultSet.getString("lastName");
  48. String city = resultSet.getString("city");
  49. int birthyear = resultSet.getInt("birthyear");
  50.  
  51. idField.setText(String.valueOf(ID));
  52. firstNameField.setText(firstName);
  53. lastNameField.setText(lastName);
  54. cityField.setText(city);
  55. birthyearField.setText(String.valueOf(birthyear));
  56. }
  57. } catch (Exception e2) {
  58. System.out.println(e2);
  59. }
  60. });
  61.  
  62. insertButton.setOnAction(e -> {
  63. try {
  64. String useDatabaseQuery = "USE Fiszki;";
  65. String insertQuery = "INSERT INTO Persons(ID, firstName, lastName, city, birthyear) "
  66. + "VALUES('" + idField.getText() + "','" + firstNameField.getText() + "','"
  67. + lastNameField.getText() + "','" + cityField.getText() + "'," + "'" + birthyearField.getText() + "');";
  68. Statement statement = getConnection().createStatement();
  69. statement.executeUpdate(useDatabaseQuery);
  70. statement.executeUpdate(insertQuery);
  71. } catch (Exception e2) {
  72. System.out.println(e2);
  73. }
  74. });
  75.  
  76. clearButton.setOnAction(e -> {
  77. idField.clear();
  78. firstNameField.clear();
  79. lastNameField.clear();
  80. cityField.clear();
  81. birthyearField.clear();
  82. });
  83. }
  84.  
  85. public void SQLStart() throws Exception {
  86. try {
  87. //String createDatabaseQuery = "CREATE DATABASE FiszkiDB;";
  88. String useDatabaseQuery = "USE Fiszki;";
  89. String createTableQuery = "CREATE TABLE Persons "
  90. + "(ID int,firstName varchar(15),lastName varchar(15),city varchar(15),birthyear int)";
  91.  
  92. Statement statement = getConnection().createStatement();
  93. // statement.executeUpdate(createDatabaseQuery);
  94. statement.executeUpdate(useDatabaseQuery);
  95. statement.executeUpdate(createTableQuery);
  96. } catch (Exception e) {
  97. System.out.println(e);
  98. }
  99. }
  100.  
  101. public Connection getConnection() throws Exception {
  102. try {
  103. String url = "jdbc:mysql://192.168.0.100:3306?autoReconnect=true&useSSL=false";
  104. String user = "fedec";
  105. String pw = "fedec";
  106. Class.forName("com.mysql.jdbc.Driver");
  107. Connection connection = DriverManager.getConnection(url, user, pw);
  108. return connection;
  109. } catch (Exception e) {
  110. System.out.println(e);
  111. }
  112. return null;
  113. }
  114.  
  115. public void GUI(Stage stage) {
  116. BorderPane mainPane = new BorderPane();
  117.  
  118. FlowPane fieldFlowPane = new FlowPane(5, 5);
  119. fieldFlowPane.getChildren().addAll(new Text("ID"), idField, new Text("First Name"), firstNameField, new Text("Last Name"),
  120. lastNameField, new Text("City"), cityField, new Text("Birthyear"), birthyearField);
  121. fieldFlowPane.setAlignment(Pos.CENTER);
  122. mainPane.setCenter(fieldFlowPane);
  123.  
  124. HBox buttonHBox = new HBox(10);
  125. buttonHBox.getChildren().add(viewButton);
  126. buttonHBox.getChildren().add(insertButton);
  127. buttonHBox.getChildren().add(clearButton);
  128. buttonHBox.setAlignment(Pos.CENTER);
  129. BorderPane.setMargin(buttonHBox, new Insets(15, 15, 15, 15));
  130. mainPane.setBottom(buttonHBox);
  131.  
  132. BorderPane.setAlignment(statusText, Pos.CENTER);
  133. mainPane.setTop(statusText);
  134.  
  135. Scene scene = new Scene(mainPane, 400, 400);
  136. stage.setScene(scene);
  137. stage.setTitle("Javaca Database");
  138. stage.show();
  139. }
  140.  
  141. @Override
  142. public void start(Stage primaryStage) throws Exception {
  143. GUI(primaryStage);
  144. if (getConnection() == null) statusText.setText("Status: DATABASE NOT CONNECTED!");
  145. else statusText.setText("Status: DATABASE CONNECTED!");
  146. SQLStart();
  147. actions();
  148. }
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement