MySQL - question: "How to save and load (Tree)Maps?"

Discussion in 'Plugin Development' started by KingNyuels, Sep 25, 2013.

Thread Status:
Not open for further replies.
  1. Offline

    KingNyuels

    Question in the thread title ...
    How can I do that? Can someone give me an example? I read somewhere that it goes beyond the "BLOB" datatype. But how?
    MySQL.java:
    Code:java
    1. public class MySQL extends Database {
    2. String user = "";
    3. String database = "";
    4. String password = "";
    5. String port = "";
    6. String hostname = "";
    7. Connection c = null;
    8.  
    9. public MySQL(String hostname, String portnmbr, String database,
    10. String username, String password) {
    11. this.hostname = hostname;
    12. this.port = portnmbr;
    13. this.database = database;
    14. this.user = username;
    15. this.password = password;
    16. }
    17.  
    18. public Connection open() {
    19. try {
    20. Class.forName("com.mysql.jdbc.Driver");
    21. this.c = DriverManager.getConnection("jdbc:mysql://"
    22. + this.hostname + ":" + this.port + "/" + this.database,
    23. this.user, this.password);
    24. return c;
    25. } catch (SQLException e) {
    26. System.out.println("Could not connect to MySQL server! because: "
    27. + e.getMessage());
    28. } catch (ClassNotFoundException e) {
    29. System.out.println("JDBC Driver not found!");
    30. }
    31. return this.c;
    32. }
    33.  
    34. public boolean checkConnection() {
    35. if (this.c != null) {
    36. return true;
    37. }
    38. return false;
    39. }
    40.  
    41. public Connection getConn() {
    42. return this.c;
    43. }
    44.  
    45. public void closeConnection(Connection c) {
    46. c = null;
    47. }
    48. }

    Database.java:
    Code:java
    1. public abstract class Database {
    2. protected boolean connected;
    3. protected Connection connection;
    4. public int lastUpdate;
    5.  
    6. public Database() {
    7. this.connected = false;
    8. this.connection = null;
    9. }
    10.  
    11. protected Statements getStatement(String query) {
    12. String trimmedQuery = query.trim();
    13. if (trimmedQuery.substring(0, 6).equalsIgnoreCase("SELECT"))
    14. return Statements.SELECT;
    15. if (trimmedQuery.substring(0, 6).equalsIgnoreCase("INSERT"))
    16. return Statements.INSERT;
    17. if (trimmedQuery.substring(0, 6).equalsIgnoreCase("UPDATE"))
    18. return Statements.UPDATE;
    19. if (trimmedQuery.substring(0, 6).equalsIgnoreCase("DELETE"))
    20. return Statements.DELETE;
    21. if (trimmedQuery.substring(0, 6).equalsIgnoreCase("CREATE"))
    22. return Statements.CREATE;
    23. if (trimmedQuery.substring(0, 5).equalsIgnoreCase("ALTER"))
    24. return Statements.ALTER;
    25. if (trimmedQuery.substring(0, 4).equalsIgnoreCase("DROP"))
    26. return Statements.DROP;
    27. if (trimmedQuery.substring(0, 8).equalsIgnoreCase("TRUNCATE"))
    28. return Statements.TRUNCATE;
    29. if (trimmedQuery.substring(0, 6).equalsIgnoreCase("RENAME"))
    30. return Statements.RENAME;
    31. if (trimmedQuery.substring(0, 2).equalsIgnoreCase("DO"))
    32. return Statements.DO;
    33. if (trimmedQuery.substring(0, 7).equalsIgnoreCase("REPLACE"))
    34. return Statements.REPLACE;
    35. if (trimmedQuery.substring(0, 4).equalsIgnoreCase("LOAD"))
    36. return Statements.LOAD;
    37. if (trimmedQuery.substring(0, 7).equalsIgnoreCase("HANDLER"))
    38. return Statements.HANDLER;
    39. if (trimmedQuery.substring(0, 4).equalsIgnoreCase("CALL")) {
    40. return Statements.CALL;
    41. }
    42. return Statements.SELECT;
    43. }
    44.  
    45. protected static enum Statements {
    46. SELECT, INSERT, UPDATE, DELETE, DO, REPLACE, LOAD, HANDLER, CALL, CREATE, ALTER, DROP, TRUNCATE, RENAME, START, COMMIT, ROLLBACK, SAVEPOINT, LOCK, UNLOCK, PREPARE, EXECUTE, DEALLOCATE, SET, SHOW, DESCRIBE, EXPLAIN, HELP, USE, ANALYZE, ATTACH, BEGIN, DETACH, END, INDEXED, ON, PRAGMA, REINDEX, RELEASE, VACUUM;
    47. }
    48. }
    49.  


    KingNyuels
     
  2. Offline

    chris4315

    You should have a method that allows you to perform queries...
     
  3. Offline

    KingNyuels

    chris4315
    ... And how would save a hole TreeMap-Object (huge! Over 1000 entrys with treemaps as values).

    KingNyuels
     
  4. Offline

    KingNyuels

Thread Status:
Not open for further replies.

Share This Page