Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Java Programming >> .

Java Chat Server Tutorial

server Chat tradizionalmente permettere due o più utenti di comunicare one- on -one attraverso messaggi testuali sui loro computer . In sostanza , un server di chat in ascolto per i messaggi in entrata e invia i messaggi in uscita . In Java , è possibile creare una classe Server Chat che riceve l'input definita dall'utente e flussi in uscita già assegnate agli sport di serie , ascolta i messaggi in arrivo da un altro computer e invia i messaggi in uscita creati dall'utente . Cose che ti serviranno
Java Development Kit ( JDK ) economici Mostra più istruzioni
1

impostare client di chat di base e definizioni di funzioni :

import java . net * , . import java.io. *; import java.awt * , .

ChatClient public class estende frame implementa Runnable {public ChatClient ( String titolo , InputStream i, OutputStream o) { } public void run ( ) { } public static void sendMessage (String msg ) { } }
2

impostare il client di base e di thread di ascolto come il costruttore della classe . Questo costruttore accetta un ingresso ( variabile "i" ) e flusso di uscita ( variabile " o") , li converte in flussi di dati nel buffer e avvia un thread di ascolto di aspettare per i messaggi :

//classe ChatClient variablesprotected DataInputStream i; protetta DataOutputStream o; protetta ascoltatore discussione ;

pubblico ChatClient ( InputStream i, OutputStream o) { this.I = new DataInputStream ( nuovo BufferedInputStream ( i) ) this.o = new DataOutputStream ( nuovo BufferedOutputStream ( o)) ; listener = new Thread ( this); listener.start (); }
3

Definire il metodo "run" , che viene eseguito quando inizia il thread di ascolto . Questo metodo controlla il flusso di dati di input , aggiunge tutti i dati in arrivo alla stringa " ricevuto" e termina quando la connessione si chiude.

Public void run ( ) {

Stringa ricevuta = new String ( ) ;

try { while (true ) { String in entrata = i.readUTF (); ricevuto + = ( linea + " \\ n" );} } catch ( IOException e) { e.printStackTrace ( ) ; } }
4

definire una funzione " sendMessage ", che invia i dati tramite la connessione di uscita sotto forma di una stringa:

public void sendMessage (String msg ) { o.writeUTF ( msg ) ; o.flush (); } catch ( IOException ex) { ex.printStackTrace (); listener.stop (); } }

 

Programmazione © www.354353.com