請(qǐng)求老師幫忙看一下錯(cuò)誤:
try {
//1.創(chuàng)建客戶(hù)端Socket,指定服務(wù)器地址和端口
Socket socket=new Socket("localhost", 1280);
//2.獲取輸出流,向服務(wù)器端發(fā)送信息
OutputStream os=socket.getOutputStream();//字節(jié)輸出流
PrintWriter pw=new PrintWriter(os);//將輸出流包裝為打印流
pw.write("用戶(hù)名:alice;密碼:789");
pw.flush();
// socket.shutdownOutput();//關(guān)閉輸出流
//3.獲取輸入流,并讀取服務(wù)器端的響應(yīng)信息
InputStream is=socket.getInputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(is));
String info=null;
while((info=br.readLine())!=null){
System.out.println("我是客戶(hù)端,服務(wù)器說(shuō):"+info);
}
//4.關(guān)閉資源
br.close();
is.close();
pw.close();
os.close();
socket.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at com.socket.Client.main(Client.java:49)
2016-07-01
檢查完代碼才在最后發(fā)現(xiàn)有報(bào)錯(cuò)信息..
首先,代碼看了一遍,應(yīng)該是沒(méi)有錯(cuò)誤。
然后是報(bào)錯(cuò)信息,我分析有兩種可能:
沒(méi)有先啟動(dòng)服務(wù)端
多次啟動(dòng)/停止過(guò)于頻繁,JVM沒(méi)來(lái)得及解除端口占用
再說(shuō)對(duì)應(yīng)的解決方法
先啟動(dòng)服務(wù)端再啟動(dòng)客戶(hù)端
有三種方案
①關(guān)閉連接時(shí)線關(guān)閉服務(wù)端②每次啟動(dòng)更換端口③多次啟動(dòng)/停止之間留下一定空閑
2016-06-28
啟動(dòng)了,我現(xiàn)在改好了
2016-06-21
是不是你沒(méi)有先啟動(dòng)服務(wù)器?或者你的服務(wù)器啟動(dòng)沒(méi)有成功。