Integrated the new ConnectSettingsManager
This commit is contained in:
parent
f579b69ae6
commit
e96bb22814
@ -7,7 +7,6 @@ import de.gnmyt.sqltoolkit.manager.*;
|
|||||||
import de.gnmyt.sqltoolkit.querybuilder.AbstractQuery;
|
import de.gnmyt.sqltoolkit.querybuilder.AbstractQuery;
|
||||||
import de.gnmyt.sqltoolkit.querybuilder.QueryBuilder;
|
import de.gnmyt.sqltoolkit.querybuilder.QueryBuilder;
|
||||||
import de.gnmyt.sqltoolkit.querybuilder.SQLQuery;
|
import de.gnmyt.sqltoolkit.querybuilder.SQLQuery;
|
||||||
import de.gnmyt.sqltoolkit.types.LoginParam;
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
@ -20,14 +19,13 @@ public class MySQLConnection {
|
|||||||
|
|
||||||
public static final Logger LOG = LoggerFactory.getLogger("MySQL-Logger");
|
public static final Logger LOG = LoggerFactory.getLogger("MySQL-Logger");
|
||||||
private final TableFactory tableFactory = new TableFactory(this);
|
private final TableFactory tableFactory = new TableFactory(this);
|
||||||
|
private final ConnectSettingsManager settingsManager = new ConnectSettingsManager(this);
|
||||||
|
|
||||||
private final String hostname;
|
private final String hostname;
|
||||||
private final String username;
|
private final String username;
|
||||||
private final String password;
|
private final String password;
|
||||||
private final String database;
|
private final String database;
|
||||||
|
|
||||||
private String connectString = "";
|
|
||||||
|
|
||||||
private Connection con;
|
private Connection con;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -45,21 +43,8 @@ public class MySQLConnection {
|
|||||||
this.database = database;
|
this.database = database;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public ConnectSettingsManager updateSettings() {
|
||||||
* Advanced constructor for the connection
|
return settingsManager;
|
||||||
*
|
|
||||||
* @param hostname MySQL server hostname
|
|
||||||
* @param username MySQL server username
|
|
||||||
* @param password MySQL server password
|
|
||||||
* @param database MySQL server database
|
|
||||||
* @param loginParams Login parameters
|
|
||||||
*/
|
|
||||||
public MySQLConnection(String hostname, String username, String password, String database, LoginParam... loginParams) {
|
|
||||||
this.hostname = hostname;
|
|
||||||
this.username = username;
|
|
||||||
this.password = password;
|
|
||||||
this.database = database;
|
|
||||||
updateConnectionString(loginParams);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -320,7 +305,7 @@ public class MySQLConnection {
|
|||||||
try {
|
try {
|
||||||
LOG.info("Connecting to " + hostname + " with user " + username + " to database " + database);
|
LOG.info("Connecting to " + hostname + " with user " + username + " to database " + database);
|
||||||
Class.forName("com.mysql.cj.jdbc.Driver");
|
Class.forName("com.mysql.cj.jdbc.Driver");
|
||||||
con = DriverManager.getConnection("jdbc:mysql://" + hostname + "/" + database + connectString, username, password);
|
con = DriverManager.getConnection("jdbc:mysql://" + hostname + "/" + database + settingsManager.generateConnectionString(), username, password);
|
||||||
LOG.info("Connection established");
|
LOG.info("Connection established");
|
||||||
} catch (Exception exception) {
|
} catch (Exception exception) {
|
||||||
if (exception.getMessage().contains("jdbc.Driver"))
|
if (exception.getMessage().contains("jdbc.Driver"))
|
||||||
@ -353,34 +338,6 @@ public class MySQLConnection {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Update the Connection String
|
|
||||||
*
|
|
||||||
* @param loginParams New login parameters
|
|
||||||
* @return this class
|
|
||||||
*/
|
|
||||||
public MySQLConnection updateConnectionString(LoginParam... loginParams) {
|
|
||||||
this.connectString = getConnectionString(loginParams);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the current jdbc connection string for mysql
|
|
||||||
*
|
|
||||||
* @param loginParams login parameters
|
|
||||||
* @return the string
|
|
||||||
*/
|
|
||||||
private String getConnectionString(LoginParam[] loginParams) {
|
|
||||||
boolean used = false;
|
|
||||||
StringBuilder currentString = new StringBuilder();
|
|
||||||
for (LoginParam param : loginParams) {
|
|
||||||
String currentChar = (used) ? "&" : "?";
|
|
||||||
used = true;
|
|
||||||
currentString.append(currentChar).append(param.getValue());
|
|
||||||
}
|
|
||||||
return currentString.toString();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if you are connected
|
* Check if you are connected
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user