No servidor.java coloque o seguinte codigo. O servidor deve rodar primeiro e aguardar o cliente conectar.
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class Servidor {
public static void main(String[] args) throws IOException {
ServerSocket servidor = new ServerSocket(15000);
System.out.println("Porta 15000 aberta");
Socket cliente = servidor.accept();
System.out.println("Nova conexao com o cliente " +
cliente.getInetAddress().getHostAddress());
Scanner entrada = new Scanner(cliente.getInputStream());
while(entrada.hasNextLine()) {
System.out.println(entrada.nextLine());
}
entrada.close();
servidor.close();
}
}
No cliente.java o seguinte arquivo deve ser executado:
import java.io.IOException;
import java.io.PrintStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;
public class Cliente {
public static void main(String[] args)
throws UnknownHostException, IOException {
Socket cliente = new Socket("192.68.1.46", 15000);
System.out.println(cliente.getInetAddress().getHostAddress());
System.out.println("O cliente se conectou com o servidor");
Scanner teclado = new Scanner(System.in);
PrintStream saida = new PrintStream(cliente.getOutputStream());
while(teclado.hasNextLine()) {
saida.println(teclado.nextLine());
}
saida.close();
teclado.close();
}
}
O ideal da conexão com o socket é através do uso de Threads
(gerenciador de processamento) pois desta maneira cliente e servidor
podem trocar dados através de um duplo socket, sendo um de envio e o outro de transmissão.
Nenhum comentário:
Postar um comentário