并非你说的运行在客户端浏览器上,任何的控件,都是运行在客户端浏览器上的,
但是并非所有的控件都拥有服务端的属性和方法。呵呵,要提高理解能力。
代码,要写在后台的文件里,而不是前台界面中。
你的服务器端无限循环接受信息那段有问题,你只能readline到一次,我把你的代码稍微改了下,测试能进行聊天:
服务端:
import javanet; import javaio; public class TCPServer { public static void main(String[] args) { try { ServerSocket ss = new ServerSocket(5550); Socket s = null; while (true) { s = ssaccept(); BufferedReader br = new BufferedReader(new InputStreamReader(s getInputStream())); Systemoutprintln("一个客户端已连接上来"); String msg = ""; PrintWriter pw = new PrintWriter(sgetOutputStream()); while ((msg=brreadLine())!=null) { Systemoutprintln("22222"); Systemoutprintln("客户端说:" + msg); pwprintln("我是服务器,你刚才说了:" + msg); pwflush(); if (msgequals("bye")) { break; } } pwclose(); ssclose(); } } catch (Exception e) { eprintStackTrace(); } } }
客户端:
import javaio; import javanet; public class TCPClient { public static void main(String[] args) { try { Socket s = new Socket("127001", 5550); BufferedReader bw = new BufferedReader(new InputStreamReader( Systemin)); BufferedReader br = new BufferedReader(new InputStreamReader(s getInputStream())); PrintWriter pw = new PrintWriter(sgetOutputStream()); String st = bwreadLine(); while (!stequals("bye")) { pwprintln(st); pwflush(); Systemoutprintln("服务器端说:" + brreadLine()); st = bwreadLine(); } brclose(); bwclose(); bwclose(); sclose(); } catch (Exception e) { eprintStackTrace(); } finally { } } }
还有socket变成楼主可以用mina做服务端哦~非常好用的东东~呵呵~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)