文档详情

java服务器与客户端源码.doc

发布:2018-06-22约1.87万字共21页下载文档
文本预览下载声明
服务器(serve?r) 1 类Serv?erTes?t 1 类Chat?Clien?t 2 类MyQu?eue 3 类Rece?iveFr?omCli?ent 4 类Send?ToCli?entTh?read 11 客户端(clien?t) 12 类Stud?entWi?ndow 12 类Stud?entDu?Qu 15 类Clie?ntTes?t 19 类BaoC?unJiL?u 20 服务器(serve?r) 类Serv?erTes?t packa?ge Serve?r_Sys?tem; impor?t java.io.IOExc?eptio?n; impor?t java.net.Serve?rSock?et; impor?t java.net.Socke?t; impor?t java.util.Vecto?r; impor?t Clien?t_Sys?tem.Teach?erWin?dow; publi?c class? Serve?rTest? exten?ds Threa?d { priva?te int numbe?r; priva?te Vecto?r allCl?ient = new Vecto?r(); priva?te MyQue?ue chatC?on = new MyQue?ue(); publi?c Serve?rTest?(int numbe?r) { this.numbe?r=numbe?r; this.start?(); } publi?c void run() { Serve?rSock?et serve?r =null; try { serve?r = new Serve?rSock?et(numbe?r); } catch? (IOExc?eptio?n e1) { // TODO Auto-gener?ated catch? block? e1.print?Stack?Trace?(); } new SendT?oClie?ntThr?ead(chatC?on,allCl?ient); while?(true) { try { Socke?t ss=serve?r.accep?t(); ChatC?lient? cc=new ChatC?lient?(ss); //Syste?m.out.print?ln(cc.toStr?ing()); allCl?ient.add(cc); //Strin?g name=ss.getIn?etAdd?ress().toStr?ing(); chatC?on.offer?(cc.IP+来聊天了。。。); new Recei?veFro?mClie?nt(cc,chatC?on,allCl?ient ); } catch? (Excep?tion e) { // TODO Auto-gener?ated catch? block? e.print?Stack?Trace?(); } } } } 类Chat?Clien?t packa?ge Serve?r_Sys?tem; impor?t java.io.Buffe?redRe?ader; impor?t java.io.IOExc?eptio?n; impor?t java.io.Input?Strea?mRead?er; impor?t java.io.Outpu?tStre?am; impor?t java.io.Print?Strea?m; impor?t java.io.Reade?r; impor?t java.net.Socke?t; impor?t Mysql?_Syst?em.User; publi?c class? ChatC?lient? { publi?c Socke?t so; publi?c Strin?g IP; publi?c Print?Strea?m out; publi?c Buffe?redRe?ader in; publi?c ChatC?lient?(Socke?t so) throw?s Excep?tion { this.so=so; Reade?r r = new Input?Strea?m
显示全部
相似文档