import java.net.*;
import java.io.*;
public class Lesson10_1 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
if(args.length>0){
server();
}
else{
client();
}
}
public static void server(){
try{
ServerSocket ss=new ServerSocket(6000);
Socket sk=ss.accept();
OutputStream ops=sk.getOutputStream();
InputStream ips=sk.getInputStream();
ops.write("Hello,Welcome you!".getBytes());
byte [] buf=new byte[100];
int len=ips.read(buf);
System.out.println(new String(buf,0,len));
ops.close();
ips.close();
sk.close();
ss.close();
}catch(Exception ex){
ex.printStackTrace();
} }
public static void client(){
try{
Socket s=new Socket(InetAddress.getByName(null),6000);
OutputStream ops=s.getOutputStream();
InputStream ips=s.getInputStream();
byte [] buf=new byte[100];
int len=ips.read(buf);
System.out.println(new String(buf,0,len));
ops.write("Hello,This is zhangsan!".getBytes());
ops.close();
ips.close();
s.close();
}catch(Exception ex){
ex.printStackTrace();
} }
}
这是我编译的源程序,我在netbeans里编译的,运行结果如下:
init:
deps-module-jar:
deps-ear-jar:
deps-jar:
compile-single:
run-main:
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:209)
at Lesson10_1.client(Lesson10_1.java:49)
at Lesson10_1.main(Lesson10_1.java:25)
不知道怎么解决,如果是配置问题,还望高手们,教教我。
import java.io.*;
public class Lesson10_1 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
if(args.length>0){
server();
}
else{
client();
}
}
public static void server(){
try{
ServerSocket ss=new ServerSocket(6000);
Socket sk=ss.accept();
OutputStream ops=sk.getOutputStream();
InputStream ips=sk.getInputStream();
ops.write("Hello,Welcome you!".getBytes());
byte [] buf=new byte[100];
int len=ips.read(buf);
System.out.println(new String(buf,0,len));
ops.close();
ips.close();
sk.close();
ss.close();
}catch(Exception ex){
ex.printStackTrace();
} }
public static void client(){
try{
Socket s=new Socket(InetAddress.getByName(null),6000);
OutputStream ops=s.getOutputStream();
InputStream ips=s.getInputStream();
byte [] buf=new byte[100];
int len=ips.read(buf);
System.out.println(new String(buf,0,len));
ops.write("Hello,This is zhangsan!".getBytes());
ops.close();
ips.close();
s.close();
}catch(Exception ex){
ex.printStackTrace();
} }
}
这是我编译的源程序,我在netbeans里编译的,运行结果如下:
init:
deps-module-jar:
deps-ear-jar:
deps-jar:
compile-single:
run-main:
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:209)
at Lesson10_1.client(Lesson10_1.java:49)
at Lesson10_1.main(Lesson10_1.java:25)
不知道怎么解决,如果是配置问题,还望高手们,教教我。
改为
Socket s=new Socket(InetAddress.getByName("localhost"),6000);
试试
你得再写一个类,再写一个main方法,调用client,先开server,再开client
ServerSocket ss=new ServerSocket(6000);
Socket sk=ss.accept();
------------------------------------------
Socket s=new Socket(InetAddress.getByName(null),6000);
客户端试图连接
-------------------------------------------------------
意见:注意下面两行错误提示,因为你代码没有行数,还有待你自己去检查,debug下吧 at Lesson10_1.client(Lesson10_1.java:49)
at Lesson10_1.main(Lesson10_1.java:25)
public static void server(){
try{
ServerSocket ss=new ServerSocket(6000);
Socket sk=ss.accept();
OutputStream ops=sk.getOutputStream();
InputStream ips=sk.getInputStream();
ops.write("Hello,Welcome you!".getBytes());
byte [] buf=new byte[100];
int len=ips.read(buf);
System.out.println(new String(buf,0,len));
ops.close();
ips.close();
sk.close();
ss.close();
}catch(Exception ex){
ex.printStackTrace();
}
检查server方法到底有没有执行,可以用println()打印信息来看,或者你自己debug,很容易找到问题所在的