[ Foro de Java ]
Un cliente nos solicita lo siguiente:
Necesita una base de datos (en MySQL o mediante creación de objetos JAVA) para la liga de Futbol Sala de Marchamalo (Guadalajara), que contendrá la siguiente información:
Una tabla con los equipos de la liga (mínimo 4). Con los siguientes campos:
IdEquipo
Nombre equipo
Presidente
Una tabla con los jugadores. Al menos 5 jugadores por equipo (1 portero, 2 defensas y dos delanteros), en la tabla deberá aparecer mínimo:
Idjugador
Apellidos
Nombre
Posición
Equipo
Una tabla de árbitros, en la que aparecerá lo siguiente, mínimo 2.
Idarbitro.
Apellidos
Nombre
Con esta base de datos, el cliente quiere que se generen los sorteos de los árbitros para cada uno de los partidos. Y que se muestre en un documento, el nombre de los equipos que juegan los partidos de cada jornada, los jugadores contendientes y el árbitro, que se designará de forma aleatoria entre los 2 que debe haber en la tabla. Un árbitro no puede repetir partido en la misma jornada. (3 puntos)
Como extra, el cliente desea que el calendario salga en una interfaz por pantalla. (1 punto)
Resumen: Después de programar debe obtenerse el archivo TXT con el calendario y la interfaz. Se valorarán todos los pasos dados, aunque no se llegue al resultado final.
ALGUNO DE VOSOTROS ME PODRIA AYUDAR A SOLUCIONARLO?
ESTE ES UN TRABAJO QUE CUENTA MUCHO PARA LA NOTA DEL EXAMEN....
GRACIAS DE ATENMANO
Hola Miguel, espero que mi respuesta llegue a tiempo, he estado varios días picando el codigo aunque desgraciadamente no puedo enviarte la base de datos y deberás hacerla tú import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.RandomAccessFile;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
public class testConexion {
public static void main(String[] args) throws IOException {
conexion conexion = new conexion();
Connection cn = null;
Statement stm = null;
ResultSet rs = null;
String Partido1 = "";
String Partido2 = "";
String Arbitros = "";
File file1 = new File("PeriPerolas.txt");
FileWriter fw = new FileWriter(file1);
PrintWriter pw = new PrintWriter(fw);
try {
cn = conexion.conectar();
stm = cn.createStatement();
rs = stm.executeQuery("SELECT Nombre FROM equipos");
ArrayList<String> list= new ArrayList<String>();
ArrayList<String> support_list= new ArrayList<String>();
ArrayList<String> partidos= new ArrayList<String>();
while (rs.next()){
list.add(rs.getString(1));
}
ArrayList<String> equiposOrdenados= new ArrayList<String>();
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(0));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(3));
equiposOrdenados.add(list.get(2));
equiposOrdenados.add(list.get(1));
equiposOrdenados.add(list.get(0));
rs = stm.executeQuery("SELECT Nombre FROM árbitros");
ArrayList<String> arbitros= new ArrayList<String>();
ArrayList<String> support_arbitros= new ArrayList<String>();
while (rs.next()){
arbitros.add(rs.getString(1));
}
rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 1");
ArrayList<String> jugadoresMarchamalo= new ArrayList<String>();
while (rs.next()){
jugadoresMarchamalo.add(rs.getString(1));
}
rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 2");
ArrayList<String> jugadoresMurcia= new ArrayList<String>();
while (rs.next()){
jugadoresMurcia.add(rs.getString(1));
}
rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 3");
ArrayList<String> jugadoresMadrid= new ArrayList<String>();
while (rs.next()){
jugadoresMadrid.add(rs.getString(1));
}
rs = stm.executeQuery("SELECT Nombre FROM marchamalofc.jugadores WHERE Equipos_idEquipos = 4");
ArrayList<String> jugadoresBarcelona= new ArrayList<String>();
while (rs.next()){
jugadoresBarcelona.add(rs.getString(1));
}
int equiposRestantes = 4;
int numJornada = 1;
for (int x=0; x<24; x++) {
String periPerolas = ".";
//System.out.println("Jornada " + numJornada + ": ");
pw.println("Jornada " + numJornada + ": ");
pw.println("");
int arbitrosRestantes = 2;
for (int n=0; n<=1; n++) {
int a = (int) (Math.random() * arbitrosRestantes);
if (n == 0) {
//esto es para copiar el codigo
//System.out.println("Partido 1: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
pw.println("Partido 1: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
} else {
//System.out.println("Partido 2: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
pw.println("Partido 2: " + equiposOrdenados.get(x) + " vs " + equiposOrdenados.get(x+1));
}
for (int w = 0; w<=1; w++) {
if (equiposOrdenados.get(x).equals("Marchamalo Futsal") ) {
pw.println(" Plantilla del Marchamalo: " + jugadoresMarchamalo + periPerolas);
}
if (equiposOrdenados.get(x).equals("Murcia") ) {
pw.println(" Plantilla del Murcia: " + jugadoresMurcia + periPerolas);
}
if (equiposOrdenados.get(x).equals("Real de Madrid") ) {
pw.println(" Plantilla del Madrid: " + jugadoresMadrid + periPerolas);
}
if (equiposOrdenados.get(x).equals("Barcelona") ) {
pw.println(" Plantilla del Barcelona: " + jugadoresBarcelona + periPerolas);
}
if (w==0) {
x++;
}
}
x++;
//System.out.println(" Árbitro: " + arbitros.get( a));
pw.println(" Árbitro: " + arbitros.get( a));
pw.println("");
support_arbitros.add(arbitros.get(a));
arbitros.remove(a);
arbitrosRestantes -= 1;
}
numJornada ++;
arbitros.add(support_arbitros.get(0));
arbitros.add(support_arbitros.get(1));
support_arbitros.remove(0);
support_arbitros.remove(0);
x-=1;
}
pw.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)