Bom dia a todos, esse é o meu primeiro post no forum.
Eu já li muita coisa a respeito de Sockets no fórum, ja pesquisei bastante coisa no google e vi muitos códigos prontos, mas ainda não achei nada que resolvesse meu problema, por isso criei esse tópico
.
O meu problema é esse: preciso fazer uma aplicação que utilize Sockets em que o Cliente envie Strings para o Servidor e o Servidor envie Strings para o Cliente.
E o principal objetivo é que seja bem simples, pretendia não usar Threads (que é o que eu sempre vejo) e não precisa que vários clientes se conectem ao servidor.
Eu consegui fazer o Cliente enviar dados para o Servidor, mas o contrário não.
Esse é o código do Servidor
public class Servidor {
public static void main(String[] args) throws IOException {
ServerSocket servidor = new ServerSocket(12345);
SimpleDateFormat formata = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
System.out.println("Porta 12345 aberta");
Socket cliente = servidor.accept();
System.out.println("Nova conexão:" + cliente.getInetAddress().getHostAddress() +
" Data e Hora: " + formata.format(Calendar.getInstance().getTime()));
Scanner entrada = new Scanner(cliente.getInputStream());
while(entrada.hasNextLine()){
System.out.println(entrada.nextLine());
}
Esse é o código do Cliente
public class Cliente {
public static void main(String[] args) throws UnknownHostException, IOException {
Socket cliente = new Socket("127.0.0.1", 12345);
System.out.println("Entre com a mensagem para transmitir");
Scanner teclado = new Scanner(System.in);
PrintStream saida = new PrintStream(cliente.getOutputStream());
while (teclado.hasNextLine()){
saida.println("Cliente: " + teclado.nextLine());
}
Eu fiz umas tentativas, meio que utilizando o método de tentativa e erro, que não deram certo.
Tentei criar um ServerSocket no cliente e mais um socket no Servidor e tentar fazer os dois se conectarem e com a conexão fazer os dois trocarem mensagens mas não deu certo…
Alguém poderia me ajudar?
Obrigado desde já.