import java.io.*;
importowy java.net. *;
importowy java.util.*;
importowy java.util. Przeszukiwacz;
społeczeństwo klasowy Serwer {
statyczny Gniazdkowy clientSocket = null;
statyczny ServerSocket serverSocket = null;
ładunek elektrostatyczny Smyczkowy responseLine;
jawny statyczny statyczny stillServ = fałszywy;
jawny statyczny Przeszukiwacz przeszukiwacz;
statyczny clientThread t [] = nowy clientThread [10];
jawny statyczny kawitacyjny magistrala (Smyczkowy args []) {
// The brak port
int port_number=4444;
jeżeli (args.length < 1)
{
System.out.println ("Zaczynać gemowy serwer… \ nPort liczba: "+port_number);
Przeszukiwacz przeszukiwacz = nowy Przeszukiwacz (System.in);
} inny {
port_number=Integer.valueOf (args [(0)]) .intValue ();
}
próba {
serverSocket = nowy ServerSocket (port_number);
System.out.println ("\ n ********************** \ n *** SERWER ZACZYNAĆ *** \ n ********************** \ n");
}
chwyt (IOException e)
{System.out.println (e);}
System.out.print ("Wchodzić Do rozkaz: ");
Smyczkowy hasło = scanner.nextLine ();
jeżeli (password.equalsIgnoreCase ("sekret")) {
System.out.println ("Powitanie aplikacja Java");
}
podczas gdy (true) {
próbować {
clientSocket = serverSocket.accept ();
System.out.println ("*** SOMEONE ZWIĄZANY *** \ n");
dla (int i=0; i<=9; i++) {
jeżeli (t [i] ==null)
{
(t [i] = nowy clientThread (clientSocket, t)).start ();
przerwa;
}
}
}
chwyt (IOException e) {
System.out.println (e);}
}
}
}
klasowy clientThread przedłużyć Nić {
BufferedReader być = null;
PrintStream os = null;
Gniazdkowy clientSocket = null;
clientThread t [];
Przypadkowy rolka = nowy Przypadkowy ();
jawny clientThread (Gniazdkowy clientSocket, clientThread [] t) {
this.clientSocket=clientSocket;
this.t=t;
}
jawny kawitacyjny bieg ()
{
Smyczkowy linia;
Smyczkowy imię;
int py;
próba {
być = nowy BufferedReader (nowy InputStreamReader (clientSocket.getInputStream ()));
os = nowy PrintStream (clientSocket.getOutputStream ());
int px = roll.nextInt (200);
//os.println ("Wchodzić Do twój name.");
imię = "Gość #" + roll.nextInt (6);
System.out.println (name+ " wchodzić do the gra. Ich atak: "+ px);
dla (int i=0; i<=9; i++)
jeżeli (t [i]! =null && t [i]! =this)
t [i] .os.println ("*** A nowy użytkownik "+name+" wchodzić do the gadka pokój!!! *** ");
podczas gdy (true) {
linia = is.readLine ();
jeżeli (line.startsWith ("/quit")) przerwa;
dla (int i=0; i<=9; i++)
jeżeli (t [i]! =null) t [i] .os.println ("< " +name+": "+px+ " > "+line); // coś powiedzieć coś
}
dla (int i=0; i<=9; i++)
jeżeli (t [i]! =null && t [i]! =this) {
System.out.println ("\ n" + imię +" opuszczać! \ n ");
t [i] .os.println ("*** The użytkownik "+name+" opuszczać the gadka pokój!!! *** ");
}
os.println ("*** Walkower "+name+" *** ");
dla (int i=0; i<=9; i++) {
jeżeli (t [i] ==this) t [i] =null;
System.out.println ("\ nSomeone opuszczać! \ n");
}
is.close ();
os.close ();
clientSocket.close ();
}
chwyt (IOException e) {};
}
} |