Está en la página 1de 6

UNIVERSIDAD

TECNICA DE
MANABI.

DOCENTE: Miguel Rodriguez.

NOMBRES:
Jerimy Isaac Moreira Alcivar.
Servidor:
package com.cpd.cpd_fc_td6_sockets_tcp_servidor;

/**
*
* @author Adonys
*/

import java.io.*;
import java.net.*;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class Servidor {

public static void main(String[] args) {

int puerto = 1234;

try{
ServerSocket serverSocket = new ServerSocket(puerto);
System.out.println("Servidor iniciado. Esperando clientes...");

while(true){
Socket clientSocket = serverSocket.accept();
System.out.println("Cliente conectado desde " +
clientSocket.getInetAddress().getHostAddress());

//Iniciar un nuevo hilo para manejar la solicitud del cliente.


Thread clientThread = new ClientThread(clientSocket);
clientThread.start();
}
}catch(IOException e){
//e.printStackTrace();
}

static class ClientThread extends Thread {


private final Socket clientSocket;
public ClientThread(Socket clientSocket) {
this.clientSocket = clientSocket;
}

@Override
public void run(){
try{
BufferedReader input = new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
PrintWriter output = new PrintWriter(clientSocket.getOutputStream(), true);

String mensaje = input.readLine();

if(mensaje.equals("hora")){
//Obtener la hora actual y enviarla al cliente.
String horaActual = obtenerHoraActual();
output.println(horaActual);
}else if(mensaje.equals("fecha")){
//Obtener la fecha actual y enviarla al cliente.
String fechaActual = obtenerFechaActual();
output.println(fechaActual);
}else{
//Mensaje no válido.
output.println("Mensaje inválido.");
}

input.close();
output.close();
clientSocket.close();
System.out.println("Cliente desconectado.");

}catch(IOException e){
//e.printStackTrace();
}
}

private String obtenerHoraActual(){


LocalDateTime now = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss");
return now.format(formatter);
}

private String obtenerFechaActual(){


LocalDateTime now = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
return now.format(formatter);
}

}
Cliente:
package com.cpd.cpd_fc_td6_sockets_tcp_cliente;

import java.net.UnknownHostException;

/**
*
* @author Adonys
*/

import java.io.*;
import java.net.*;
import java.util.Scanner;

public class Cliente {

public static void main(String[] args){

String servidor = "127.0.0.1";


int puerto = 1234;

try{
Socket socket = new Socket(servidor, puerto);
BufferedReader input = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
PrintWriter output = new PrintWriter(socket.getOutputStream(), true);

//Leer la solicitud del usuario desde la consola.


Scanner scanner = new Scanner(System.in);
System.out.println("Ingrese 'hora' o 'fecha': ");
String solicitud = scanner.nextLine();

//Enviar la solicitud al servidor.


output.println(solicitud);

//Leer la respuesta del servidor.


String respuesta = input.readLine();
System.out.println("Respuesta del servidor: " + respuesta);
}catch(UnknownHostException e){
System.err.println("Error: Host desconocido " + servidor);
}catch(IOException e){
System.err.println("Error de conexión con el servidor " + servidor);
}

}
Link:

https://drive.google.com/drive/folders/1BcQ3NbCNFtgAVFa0SMBjLR5LEwx6nEsl?us
p=drive_link

También podría gustarte