Jelajahi Sumber

Database class fully working in combination with website

DaveyMathijssen 10 tahun lalu
induk
melakukan
0d1ff0e497
1 mengubah file dengan 24 tambahan dan 20 penghapusan
  1. 24 20
      src/agenda/Database.java

+ 24 - 20
src/agenda/Database.java

@@ -3,11 +3,17 @@ package agenda;
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.PreparedStatement;
+import java.sql.ResultSet;
 import java.util.ArrayList;
+import java.sql.Statement;
 
 public class Database {
+  //db connection
   private Connection connect = null;
+  //preparedstatement for filling db with acts
   private PreparedStatement preparedStatement = null;
+  //statement for checking if db already has stages stored
+  private Statement statement = null;
   
   //database values
   private String host = "jdbc:mysql://jancokock.me:3306/festivalagenda";
@@ -24,37 +30,35 @@ public class Database {
   }
   
   public void writeDatabase() throws Exception {
-	  for(Act act : agenda.getActs()){
-		  System.out.println(act);
-	  }
     try {
       Class.forName("com.mysql.jdbc.Driver");
       connect = DriverManager.getConnection(host,user,pass);
 
-      //first check if agenda already exists in DB, otherwise delete everything
-      System.out.println("test1");
-	//insert stage names
+      //First delete all act records in DB and set auto increment back to 1
+      statement = connect.createStatement();
+      statement.executeUpdate("delete from festivalagenda.acts");
+      statement.executeUpdate("ALTER TABLE festivalagenda.acts AUTO_INCREMENT = 1");
+	  
+      //insert stage names
+      
       for(Act act : acts){
+    	  String stage = act.getStage().getName();
     	  String name = act.getName();
     	  String genre = act.getGenre();
     	  String beginTime = act.getActTime().getBeginTimeString();
     	  String endTime = act.getActTime().getEndTimeString();
     	  int popularity = act.getPopularity();
-    	    
-    	  System.out.println(name);
-    	  System.out.println(genre);
-    	  System.out.println(beginTime);
-    	  System.out.println(endTime);
-    	  System.out.println(popularity);
-    	  //insert data into database
-    	  preparedStatement = connect.prepareStatement("insert into  festivalagenda.Act (agenda_view_id, stage_id, begintijd, eindtijd, naam, genre, populariteit) values (1, 1, ?, ?, ?, ?, ?)");
-    	  preparedStatement.setString(1, beginTime);
-    	  preparedStatement.setString(2, endTime);
-          preparedStatement.setString(3, name);
-          preparedStatement.setString(4, genre);
-          preparedStatement.setInt(5, popularity);
+
+    	  //insert act data into database
+    	  preparedStatement = connect.prepareStatement("insert into  festivalagenda.acts (stage, begintijd, eindtijd, naam, genre, populariteit) values (?, ?, ?, ?, ?, ?)");
+    	  preparedStatement.setString(1, stage);
+    	  preparedStatement.setString(2, beginTime);
+    	  preparedStatement.setString(3, endTime);
+          preparedStatement.setString(4, name);
+          preparedStatement.setString(5, genre);
+          preparedStatement.setInt(6, popularity);
           preparedStatement.executeUpdate();
-          System.out.println("test2");
+          
       }
             
     } catch (Exception e) {