hehe you are waiting for an answer, listening I call your name, you catch my voice, accept it You know I am calling your name, you answer I know your answer Keep chatting on the airXixi
good answer ,the up answeri think
首先不管你的客户端在那里,你需要你的服务器端开放一个端口,然后利用ServerSocket进行监听,以便随时相应客户端的连接。当有客户端连接的时候,会返回一个Socket,从这个Socket里读取流进行你想要的操作。 try { ServerSocket ss = new ServerSocket(1025); for(;;) { Socket cilent = ss.accept(); BufferReader in = new BufferedReader(new InputStreamReader (client.getInputStream())); ////////////////// // Do ////////////////// } } 客户端用Socket直接连接就可以了 try { Socket s = new Socket("http://127.0.0.1",1025); //////////// // Do ///////////////////////////////// }
you are waiting for an answer, listening
I call your name, you catch my voice, accept it
You know I am calling your name, you answer
I know your answer
Keep chatting on the airXixi
try
{
ServerSocket ss = new ServerSocket(1025);
for(;;)
{
Socket cilent = ss.accept();
BufferReader in = new BufferedReader(new InputStreamReader (client.getInputStream()));
//////////////////
// Do
//////////////////
}
}
客户端用Socket直接连接就可以了
try
{
Socket s = new Socket("http://127.0.0.1",1025);
////////////
// Do
/////////////////////////////////
}
例如你编译后的类文件叫'TestServer.class',那你到它的路径下运行:
java TestServer
这样server端就启动了
然后,你在运行客户端程序,建议你在2台机器上;
这样就好啦;
server端 client端
SOCKEt SOCKET
bind bind
listen connect
send/receive data send/receive data
ServerSocket的是8888运行server程序倒是不报错了,但它什么也不显示呀~~光标跳到下一行的开头,然后就闪呀闪的,烦死啦:)
比如
server=new ServerSocket(8888);
while(true){
client=server.accept();
client.close();
//System.out.println("client connected");
}
像这样接受到客户连接马上上断开,什么别的事也不干,可不只是闪呀闪的。
如果你在连接后加入System.out.println("client connected");
服务器屏幕在客户端连接后就会提示:client connected!
当需要服务的时候 socket向服务器的固定端口发出请求
serversocket接收到请求的时候,向socket返回请求
然后就没了
不过,jsp是客户端访问才能激活。所以最好把这个启动过程放在一个servelet中。把该servelet设置成自动启动(就是启动web服务的时候,该servelet也启动,怎么称呼记不得了,一般的书都会讲到怎么设置的)。