Sockets tjene som et lavt nivå kommunikasjon objekt for Java-programmer . Ved hjelp Sockets og deres kolleger , ServerSockets kan programmerere lage enkle Java- programmene som sender en lytt for data over en dataportene . Integrering input og output strømmer inn i denne prosessen lar programmerere å behandle mottatte data . Gjennom dette enkle oppsettet , kan Java -programmerer bygge noe sånt som en chat -server. Java ServerSockets
programmerere bruke ServerSockets å lytte til datamaskin porter for innkommende data . Metodene som inngår i ServerSocket klassen innbefatter måter å lytte på innkommende data , samt overføring av disse dataene , slik at det kan være formatert eller oversettes. Å bygge en enkel chat -server, kan en enkelt ServerSocket jobbe som lytter agent for å overvåke for innkommende tekst .
Basic ServerSocket for Chat Server
SeverSocket metoden " akseptere " lytter etter innkommende data på en definert port . Den ServerSocket objektet fortsetter å lytte , med mindre porten ikke finnes eller som allerede er i bruk. Portnummeret som brukes skal ha blitt avtalt av begge brukere av chat -programmet , vanligvis gjennom en bestemt protokoll . For å begynne å lytte etter innkommende data , må programmereren å starte ServerSocket objektets akseptere metoden : . .
Import java.net * ; import java.util * ;
public class ChatServer {
public static void main ( String [] args ) {public ss ServerSocket = new ServerSocket ( 9999) ; Socket s = ss.accept ();
} }
med Input Strømmer
Når ServerSocket lytter til porten , venter det til å motta data fra denne porten. Den eksterne datamaskinen som chat informasjonen vil sende dataene , i dette tilfellet gjennom port 9999. Den ServerSocket objektet vil returnere en Socket objekt når tilkoblingen er gjort . Når akseptere metoden returnerer socket, kan den kontakten brukes til å lese data inn i en BufferedReader objekt , som vil holde chat informasjon : en
String melding = " "; BufferedReader i = new BufferedReader ( ny InputStreamReader ( s.getInputStream ( ) ));
Skrive ut melding
ServerSocket akseptert en tilkobling, og returnerte forbindelse objekt i form av et objekt. Programmereren hentet innspill fra at Socket objekt i et BufferedReader objekt. Den BufferedReader objekt kan returnere strengen i et String objekt for behandling. Når dette skjer , kan programmereren vise meldingen i et program , plassere den i et eget pop -up vindu , eller skrive ut utgang til en terminal : en
melding = in.readLine (); System.out . println ( melding) ;