Bom pessoal na FJ-11 ensina a criar um sistema de chat, fiz ok
o problema surgiu qdo sugeriu pra fazer o servidor aceitar multiplas conexões, pois ao implementar Runnable tinha que escrever o metodo run() e eu nao soube como escrever esse metedo. abaixo o cod.
servidor
import java.io.IOException;
import java.net.*;
import java.util.Scanner;
public class Servidor {
public static void main(String[] args) throws IOException {
ServerSocket servidor = new ServerSocket(12345);
System.out.println("Porta 12345 aberta");
while(true){ //nao sei se fiz certo aqui, pois a apostila dizia logo abaixo de invocar o metodo accept() tinha q criar uma thread pra cuidar da conexão
Socket cliente = servidor.accept(); // e o laço se encarregaria de liberar a porta para novo cliente se conectar
TratamentoClass tratamento = new TratamentoClass(cliente);
Thread t1 = new Thread(tratamento);
t1.start();
}
System.out.println(cliente.getInetAddress().getHostAddress()); //print ip cliente
Scanner scanner = new Scanner(cliente.getInputStream());
while (scanner.hasNextLine()){
System.out.println(scanner.nextLine());
}
scanner.close();
servidor.close();
cliente.close();
}
}
aqui abaixo o cliente
import java.io.IOException;
import java.io.PrintStream;
import java.net.Socket;
import java.util.Scanner;
public class Cliente {
public static void main(String[] args) throws Exception, IOException {
Socket cliente = new Socket("127.0.0.1", 12345);
System.out.println("O cliente se conectou ao servidor!");
Scanner teclado = new Scanner(System.in);
PrintStream saida = new PrintStream(cliente.getOutputStream());
while (teclado.hasNextLine()){
saida.println(teclado.nextLine());
}
saida.close();
teclado.close();
cliente.close();
}
}
e aqui mora meu problema, a classe que criei q implementa Runnable
public class TratamentoClass implements Runnable{
public void run() {
// como eu implemento esse metodo que vai ser usado para tratar a conexão via thread no servidor?
}
}