黑馬程序員—TCP-客戶端併發登錄小例子

------- <a href="http://www.itheima.com" target="blank">android培訓</a>、<a href="http://www.itheima.com" target="blank">java培訓</a>、期待與您交流! ----------

寫着兩個程序是我是卸載兩個java文件下的,而且這兩個文件分別放在了兩個不同的目錄下,也就是同時打開兩個MyEclipse窗口,這樣有利於調試,查看效果更明顯。

客戶端:

package twenty_four;
import java.io.*;
import java.net.*;
import java.util.*;
public class loginClient3 {
public static void main(String[] args)throws Exception {
Socket s=new Socket("192.168.106.88",60011);
BufferedReader bufer=new BufferedReader(new InputStreamReader(System.in));
PrintWriter out=new PrintWriter(s.getOutputStream(),true);
BufferedReader bufIn=new BufferedReader(new InputStreamReader(s.getInputStream()));
for(int x=0;x<3;x++)
{
String line=bufer.readLine();
if(line==null)
break;
out.println(line);
String info=bufIn.readLine();
System.out.println("info:"+info);
if(info.contains("歡迎"))
break;
}
bufer.close();
s.close();
}
}

服務端:

package twenty_four;
import java.io.*;
import java.util.*;
import java.net.*;
public class loginServer3 {
public static void main(String[] args)throws Exception {
ServerSocket ss=new ServerSocket(60011);
while(true)
{
Socket s=ss.accept();
new Thread(new UserThread(s)).start();
}
}


}
class UserThread implements Runnable
{
private Socket s;
UserThread(Socket s)
{
this.s=s;
}
public void run()
{
String ip=s.getInetAddress().getHostAddress();
System.out.println(ip+".........connection");
try
{
for(int x=0;x<3;x++)
{
BufferedReader bufIn=new BufferedReader(new InputStreamReader(s.getInputStream()));
String name=bufIn.readLine();
if(name==null)
break;
BufferedReader bufer=new BufferedReader(new FileReader("until.txt"));
PrintWriter out=new PrintWriter(s.getOutputStream(),true);

String line=null;
boolean flag=false;
while((line=bufer.readLine())!=null)
{
if(line.equals(name))
{
flag=true;
break;
}
}
if(flag)
{
System.out.println(name+",已登錄");
out.println(name+",歡迎光臨");
break;
}
else
{
System.out.println(name+",嘗式登陸");
out.println(name+",用戶名不存在");

}
}
s.close();
}
catch(Exception e)
{
throw new RuntimeException(ip+"校驗失敗");
}
}
}

------- <a href="http://www.itheima.com" target="blank">android培訓</a>、<a href="http://www.itheima.com" target="blank">java培訓</a>、期待與您交流! ----------



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章