Muy buenas, estoy haciendo un jueguecito para ir probando el acceso a bases de datos, y quiero meter los atributos de un personaje desde una bbdd , pero no se si se puede abrir la conexión a una bbdd desde fuera del main, porque me está dando errores :/
Por ahora tengo este código :
Me da error en la linea donde declaro el Scanner, me dice que en vez de ";" tengo que poner "{"
y en la llave para cerrar el catch también me da error...
Quizás lo que quiero no se hace de esta forma...
Un abrazo.
Por ahora tengo este código :
Código (java) [Seleccionar]
package Juego;
import java.util.InputMismatchException;
import java.util.Scanner;
import java.sql.*;
public class Personaje {
private int nivel;
private int exp;
private String nombre;
private int raza;
private int clase;
private int daño;
private int defensa;
private int acierto;
private int mana;
private int vida;
private int reino;
static Scanner S = new Scanner(System.in);
try{
Class.forName("com.mysql.jdbc.Driver");
Connection conexion = DriverManager.getConnection("jdbc:mysql://"
+ "localhost" + "/" + "bbdd", "root", "");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
public Personaje(){
System.out.println("Introduce tu nombre de personaje: ");
this.nombre = S.nextLine();
System.out.println("Escoge la raza: ");
this.raza = capturarNum();
System.out.println("Escoge la clase: ");
this.clase = capturarNum();
this.nivel = 0;
this.exp = 0;
}
public static int capturarNum(){
int num;
try{
num = S.nextInt();
String prueba = S.nextLine();
}catch(InputMismatchException e){
System.out.print("Error al introducir un número, intentalo de nuevo: ");
num = capturarNum();
}
return num;
}
}
Me da error en la linea donde declaro el Scanner, me dice que en vez de ";" tengo que poner "{"
y en la llave para cerrar el catch también me da error...
Quizás lo que quiero no se hace de esta forma...
Un abrazo.