Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| dad:repasoparcial1 [2023/11/09 10:13] – thejuanvisu | dad:repasoparcial1 [2023/11/09 11:13] (actual) – thejuanvisu | ||
|---|---|---|---|
| Línea 21: | Línea 21: | ||
| - El profe se va a inventar un protocolo/ | - El profe se va a inventar un protocolo/ | ||
| - Ver que respuesta dan el servidor a un comando de un cliente por sockets (Como el chat pero con Cases) | - Ver que respuesta dan el servidor a un comando de un cliente por sockets (Como el chat pero con Cases) | ||
| + | - Server Socket -> While True, lanzo hilo | ||
| + | - Si un cliente tiene un listado de algo que guarda en el objeto hilo | ||
| + | - Los hilos comparten la información para estar centralizados | ||
| + | - Conexión con otros hilos a través del serverSocket | ||
| + | < | ||
| + | constructor< | ||
| + | this.x = x; | ||
| + | } | ||
| + | run(){ | ||
| + | this.x | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | ===== Sugerencias/ | ||
| + | |||
| + | * Si pide un protocolo, en el cliente debemos tener como un menú de consola o meter cosas para usar el protocolo y que el cliente mande algo al servidor para que este ejecute lo que tenga que escribir | ||
| + | * Construimos el servidor para el protocolo. El Servidor debe tener un Switch para que haga una acción en función a lo que reciba del cliente | ||
| + | * El cliente debe ser de base un cliente vacío que tenga un readln y un flush (PW.println()), | ||
| + | * Para cada comando o funcionalidad del servidor debemos ejecutar el cliente y meter algo por teclado, para evitar perder tiempo debemos ir metiendo todos los comandos que queramos ejecutar a machete. | ||
| + | < | ||
| + | // | ||
| + | While True | ||
| + | Creamos server socket | ||
| + | Acepto conexión | ||
| + | Creo Hilo | ||
| + | Lanzo Hilo | ||
| + | | ||
| + | </ | ||
| + | |||
| + | Utilizaremos una implementación similar a la del chat de clase (Multicliente) | ||
| + | |||
| + | |||
| + | |||
| + | ===== Para la práctica (Incompleto) ===== | ||
| + | |||
| + | < | ||
| + | public class ClaseAGuardar implements Serializable{ | ||
| + | private String campo; | ||
| + | public String getCampo(){ | ||
| + | return campo; | ||
| + | } | ||
| + | public String setCampo(String campo){ | ||
| + | this.campo = campo; | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | public class EscribirEnFichero{ | ||
| + | public static void main(String args[]){ | ||
| + | FileOutputStream fos = null; | ||
| + | ObjectOutputStream oos= null; | ||
| + | } | ||
| + | } | ||
| + | </ | ||