Anda di halaman 1dari 18

BASE DE DATOS

Establecer donde est la base


de datos

publicAdministradorResultados(Propertiespropiedades)
{
config=propiedades;
Filedata=newFile(config.getProperty("admin.db.path"));
System.setProperty("derby.system.home",data.getAbsoluteP
ath());

Conectarse a la Base de
Datos
publicvoidconectarABD()throwsSQLException,E
xception
{
Stringdriver=config.getProperty("admin.db.dr
iver");
Class.forName(driver).newInstance();
Stringurl=config.getProperty("admin.db.url")
;
conexion=DriverManager.getConnection(url);
verificarInvariante();
}

Desconectarse de la Base de
Datos
publicvoiddesconectarBD()throwsSQLException
{
conexion.close();
Stringdown=config.getProperty("admin.db.shutdown"
);
try
{
DriverManager.getConnection(down);
}
catch(SQLExceptione)
{
//Albajarlabasededatosseproducesiempreunaex
cepcin
}
verificarInvariante();
}

Crear una tabla


publicvoidinicializarTabla()throwsSQLException
{
Statements=conexion.createStatement();
booleancrearTabla=false;
try
{
s.executeQuery("SELECT*FROMnombreTablaWHERE1=2");
}
catch(SQLExceptionse)
{
crearTabla=true;
}
if(crearTabla)
{
s.execute("CREATETABLEnombreTabla(col1varchar,
col2integer,col3intiger,PRIMARYKEY(col1))");
}
s.close();
verificarInvariante();
}

Consulta
publicCollectionconsultarRegistrosJugadores()throwsSQLException
{
Collectionregistros=newLinkedList();
Stringsql="SELECTnombre,ganados,perdidosFROMresultados";
Statementst=conexion.createStatement();
ResultSetresultado=st.executeQuery(sql);
while(resultado.next())
{
Stringnombre=resultado.getString(1);
intganados=resultado.getInt(2);
intperdidos=resultado.getInt(3);
RegistroJugadorregistro=newRegistroJugador(nombre,ganados,perdidos
);
registros.add(registro);
}
resultado.close();
st.close();
returnregistros;
}

Actualizacin
publicvoidregistrarVictoria(Stringnombre)throwsSQLException
{
Stringsql="UPDATEresultadosSETganados=ganados+1WHERE
nombre='"+nombre+"'";
Statementst=conexion.createStatement();
st.executeUpdate(sql);
st.close();
verificarInvariante();
}

CONEXIN ENTRE
EQUIPOS

El Cliente

privateSocketcanal;

privatePrintWriterout;
privateBufferedReaderin;

El cliente
try
{
canal=newSocket(157.253.8.10,9999);
out=newPrintWriter(canal.getOutputStream(),true);
in=newBufferedReader(newInputStreamReader(canal.getInputSt
ream()));

}
catch(Exceptione)
{
}

El servidor

privateServerSocketrece
ptor;

El servidor
try
{
receptor=newServerSocket(9999);
while(true)
{
SocketsocketNuevoCliente=receptor.accept();
atender(socketNuevoCliente);
}
}
catch(Exceptione)
{
}
finally
{
try
{
receptor.close();
}
catch(IOExceptione)
{
e.printStackTrace();
}
}

ATENDER

Clase para atender


privateSocketatendido;

privatePrintWriteratendidoO
ut;

privateBufferedReaderatendi
doIn;

Clase para atender


publicAtencion(Socketcanal)throwsIOException
{
atendidoOut=newPrintWriter(canal1.getOutputStream
(),true);
atendidoIn=newBufferedReader(newInputStreamRea
der
(canal1.getInputStream()));
atendido=canal;
}

Atender varios al
tiempo

publicclassAtencionextends
Thread

Atender

publicvoidrun()
{
//protocolo
}

Iniciar atencin
synchronizedprivatevoidatender(SocketsocketNue
voCliente)
throwsIOException
{

Atencion a= new Atencion( socketNuevoCliente);


a.start();
}

Anda mungkin juga menyukai