Browse Source

Added database class and added button to upload new agenda to db.
Also added mysql jar file to project

DaveyMathijssen 10 years ago
parent
commit
daa8e88968
4 changed files with 82 additions and 0 deletions
  1. 1 0
      .classpath
  2. BIN
      mysql-connector-java-5.1.32-bin.jar
  3. 65 0
      src/agenda/Database.java
  4. 16 0
      src/gui/menubar/MenuBar.java

+ 1 - 0
.classpath

@@ -3,5 +3,6 @@
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" path="res"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+	<classpathentry kind="lib" path="mysql-connector-java-5.1.32-bin.jar"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>

BIN
mysql-connector-java-5.1.32-bin.jar


+ 65 - 0
src/agenda/Database.java

@@ -0,0 +1,65 @@
+package agenda;
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.PreparedStatement;
+import java.util.ArrayList;
+
+public class Database {
+  private Connection connect = null;
+  private PreparedStatement preparedStatement = null;
+  
+  //database values
+  private String host = "jdbc:mysql://jancokock.me:3306/festivalagenda";
+  private String user = "projectgroepa6";
+  private String pass = "tzHnYRbpt7r3z4jt";
+  
+  //get agenda values
+  private Agenda agenda = new Agenda();
+  private ArrayList<Act> acts = (ArrayList<Act>) agenda.getActs();
+  
+
+  public void writeDatabase() throws Exception {
+    try {
+      Class.forName("com.mysql.jdbc.Driver");
+      connect = DriverManager.getConnection(host,user,pass);
+
+      //first check if agenda already exists in DB, otherwise delete everything
+       
+	//insert stage names
+      for(Act act : acts){
+    	  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, begintijd, eindtijd, naam, genre, populariteit) values (0, ?, ?, ?, ?, ?)");
+    	  preparedStatement.setString(1, beginTime);
+    	  preparedStatement.setString(2, endTime);
+          preparedStatement.setString(3, name);
+          preparedStatement.setString(4, genre);
+          preparedStatement.setInt(5, popularity);
+          preparedStatement.executeUpdate();
+      }
+            
+    } catch (Exception e) {
+      throw e;
+    } finally {
+    	if (preparedStatement != null) {
+            preparedStatement.close();
+          }
+
+          if (connect != null) {
+            connect.close();
+          }
+    }
+
+  }
+} 

+ 16 - 0
src/gui/menubar/MenuBar.java

@@ -16,6 +16,7 @@ import javax.swing.JOptionPane;
 import javax.swing.KeyStroke;
 
 import agenda.Agenda;
+import agenda.Database;
 import agenda.Io;
 
 @SuppressWarnings("serial")
@@ -47,6 +48,7 @@ public class MenuBar extends JMenuBar{
 		JMenuItem pasteAction = new JMenuItem("Paste");
 		JMenuItem saveAction = new JMenuItem("Save");
 		JMenuItem helpAction = new JMenuItem("Help");
+		JMenuItem uploadAction = new JMenuItem("Upload agenda to DB");
 		//view 
 		JMenuItem editorView = new JMenuItem("Editor");
 		JMenuItem agendaView = new JMenuItem("Agenda");
@@ -60,6 +62,7 @@ public class MenuBar extends JMenuBar{
 		copyAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, ActionEvent.CTRL_MASK));
 		pasteAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, ActionEvent.CTRL_MASK));
 		saveAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK));
+		uploadAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_U,ActionEvent.CTRL_MASK));
 
 		fileMenu.add(newAction);
 		newAction.addActionListener(new ActionListener() {
@@ -91,6 +94,19 @@ public class MenuBar extends JMenuBar{
 				}
 			}
 		});
+		fileMenu.add(uploadAction);
+		uploadAction.addActionListener(new ActionListener() {
+			public void actionPerformed(ActionEvent arg0) {
+				Database database = new Database();
+				try {
+					database.writeDatabase();
+				} catch (Exception e) {
+					e.printStackTrace();
+					System.out.println("Database error");
+				}
+				System.out.println("You have clicked on the database action");
+			}
+		});
 		fileMenu.addSeparator();
 		fileMenu.add(exitAction);
 		exitAction.addActionListener(new ActionListener() {