Conexión con BD.

Creamos la clase para realizar la conexión con la BD.
Pequeños cambios varios.
This commit is contained in:
2022-06-09 13:47:31 +02:00
parent 1b77c9996e
commit f79d0b6728
5 changed files with 96 additions and 7 deletions
+1
View File
@@ -1,6 +1,7 @@
sourceCompatibility = 1.7
dependencies {
implementation 'org.jetbrains:annotations-java5:20.1.0'
implementation 'mysql:mysql-connector-java:8.0.29'
}
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
@@ -2,15 +2,14 @@ package uberelectron.gameSystems;
/**
* Contiene los datos de inicio de sesión del usuario.
*
* Esta clase se serializa automáticamente a JSON en LoginSystem.
* @author Daniel García
*
* @see LoginSystem
*/
public class LoginData
{
public LoginData()
{
}
public LoginData() {}
String nickname;
String password;
@@ -22,6 +22,11 @@ public class LoginSystem
*/
public static boolean IsLogged() { return logged; }
public static String GetUserName()
{
return datosUsuario.nickname;
}
public static void CrearNuevoUsuario()
{
//Creará un nuevo LoginData:
@@ -49,6 +54,6 @@ public class LoginSystem
private static LoginData datosUsuario = null;
private static String localDefaultSavePath = "gameData/";
private static String defaultFileName = "user.json";
private static final String localDefaultSavePath = "gameData/";
private static final String defaultFileName = "user.json";
}
@@ -0,0 +1,62 @@
package uberelectron.gameSystems;
import com.mysql.jdbc.Driver;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
public class dbConnector
{
private static Connection connect;
private static dbData datosConexion;
private static final String localDefaultSavePath = "gameData/";
private static final String defaultFileName = "dbData.json";
private static final String mensajeErrorGenerico = "No se ha podido interactuar con la BD.";
public static void InitDbConnection()
{
try
{
Class.forName("com.mysql.cj.jdbc.Driver");
//Todo: Cargar datos de acceso desde dbData.
String url = "jdbc:mysql://" + datosConexion.hostname
+ ":" + datosConexion.port
+ "/" + datosConexion.dbName;
connect = DriverManager.getConnection(url,
datosConexion.user,
datosConexion.password);
//Comprobamos si la conexión funciona.
try
{
Statement stt = connect.createStatement();
stt.execute("use " + datosConexion.dbName + ";");
}
catch (Exception e)
{
System.err.println("No ha sido posible comunicarse con la BD.");
return;
}
//CerrarStatement(stt);
}
catch (Exception e)
{
System.err.println("No se ha podido cargar el Driver de MySQL.");
return;
}
}
private static void LoadConnectionDataFromJSON()
{
}
}
@@ -0,0 +1,22 @@
package uberelectron.gameSystems;
/**
* Contiene los datos necesarios para la conexión con la BD.
* Esta clase se serializa automáticamente a JSON en DBConnector.
*/
public class dbData
{
public dbData() {}
String hostname;
String port;
String user;
String password;
String dbName;
String args;
}