programmatori usano ServerSocket per ascoltare porte del computer per i dati in arrivo. I metodi inclusi nella classe ServerSocket includono modalità di ascolto per i dati in ingresso , così come il trasferimento di tali dati in modo che possa essere formattato o tradotta . Per costruire un semplice server di chat , un singolo ServerSocket può lavorare come agente di ascolto per il monitoraggio per il testo in entrata .
Base ServerSocket per Chat Server
Il metodo SeverSocket " accettare " in ascolto per i dati in ingresso su una porta definita . L'oggetto ServerSocket continua ad ascoltare , a meno che la porta non esiste o già in uso . Il numero di porta utilizzato sarà stato concordato da entrambi gli utenti del programma di chat , di solito attraverso un certo protocollo . Per iniziare l'ascolto per i dati in entrata , il programmatore ha bisogno di iniziare accettare metodo dell'oggetto ServerSocket : . .
Import java.net * ; import java.util * ;
class Chatserver pubblico {
public static void main ( String [] args ) {public ServerSocket ss = new ServerSocket ( 9999) ; Socket s = ss.accept (); } }
con flussi di input
Una volta che il ServerSocket in ascolto alla porta , aspetta fino a ricevere i dati da tale porta . Il computer remoto da cui le informazioni videochat invierà i dati , in questo caso attraverso la porta 9999 . L'oggetto ServerSocket restituisce un oggetto Socket , una volta effettuato il collegamento . Una volta che il metodo accetta restituisce il socket, che la presa può essere utilizzata per leggere i dati in un oggetto BufferedReader , che conterrà le informazioni di chat:
messaggio String = ""; BufferedReader in = new BufferedReader (new InputStreamReader ( s.getInputStream ( ))) ;
Stampa del messaggio
ServerSocket accettato una connessione , e ha restituito un oggetto di connessione in forma di un oggetto. Il programmatore estratto l'input da quella oggetto Socket in un oggetto BufferedReader . L'oggetto BufferedReader può restituire la stringa in un oggetto String per l'elaborazione. Una volta che questo si verifica , il programmatore può visualizzare il messaggio in un programma, metterlo in una separata finestra pop-up , o stampare l'output in un terminale :
messaggio
= in.readLine (); System.out . println ( messaggio) ;
Programmazione © www.354353.com