X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=util%2Forg%2Fcacert%2Fgigi%2Futil%2FDatabaseManager.java;h=471083953b8d2b2f1362f8d440eca5016c7789de;hb=2824d1c165c501e2f3a8809044788b33b81f478a;hp=e43eeb36203ed71c550d4ce7ce08cdd24267a9a4;hpb=0a814fdf958fab3f77d7d9d5333ad4307f7c9b8c;p=gigi.git diff --git a/util/org/cacert/gigi/util/DatabaseManager.java b/util/org/cacert/gigi/util/DatabaseManager.java index e43eeb36..47108395 100644 --- a/util/org/cacert/gigi/util/DatabaseManager.java +++ b/util/org/cacert/gigi/util/DatabaseManager.java @@ -1,40 +1,54 @@ package org.cacert.gigi.util; import java.io.File; +import java.io.FileReader; import java.io.IOException; import java.nio.file.Files; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; +import java.util.Properties; public class DatabaseManager { public static String readFile(File f) throws IOException { return new String(Files.readAllBytes(f.toPath())); } - public static void main(String[] args) throws SQLException, - ClassNotFoundException, IOException { + + public static void main(String[] args) throws SQLException, ClassNotFoundException, IOException { + if (args.length == 0) { + Properties p = new Properties(); + p.load(new FileReader("config/gigi.properties")); + args = new String[] { p.getProperty("sql.driver"), p.getProperty("sql.url"), p.getProperty("sql.user"), + p.getProperty("sql.password") }; + } if (args.length < 4) { - System.err - .println("Usage: com.mysql.jdbc.Driver jdbc:mysql://localhost/cacert user password"); + System.err.println("Usage: com.mysql.jdbc.Driver jdbc:mysql://localhost/cacert user password"); return; } run(args); } - public static void run(String[] args) throws ClassNotFoundException, - SQLException, IOException { + + public static void run(String[] args) throws ClassNotFoundException, SQLException, IOException { Class.forName(args[0]); - Connection conn = DriverManager - .getConnection(args[1], args[2], args[3]); + Connection conn = DriverManager.getConnection(args[1], args[2], args[3]); Statement stmt = conn.createStatement(); - String sql = readFile(new File("doc/tableStructure.sql")); + addFile(stmt, new File("doc/tableStructure.sql")); + File localData = new File("doc/sampleData.sql"); + if (localData.exists()) { + addFile(stmt, localData); + } + stmt.executeBatch(); + stmt.close(); + } + + private static void addFile(Statement stmt, File f) throws IOException, SQLException { + String sql = readFile(f); String[] stmts = sql.split(";"); for (String string : stmts) { if (!string.trim().equals("")) { stmt.addBatch(string); } } - stmt.executeBatch(); - stmt.close(); } }