一、编程的基本思想:
1、构建一个服务器和一个客户端,服务器对象使用ServerSocket类进行声明,在构建的同时需要给应用程序分配端口号;客户端对象使用Socket类进行声明,在声明客户端对象时需要输入服务器的主机名或IP地址,以及端口号。
2、当连接建立之后,服务器将要发送的信息输入到I/O流中,而客户端从I/O流中读取信息。
二、具体实现过程:
服务器代码:
public class ServerDemo {
/**
* @param args
* 服务器
*/
public static void main(String[] args) {
try {
ServerSocket server=new ServerSocket(8888);//给定服务器端口号
System.out.println("服务器已经启动,正在等待连接。。。");
Socket s=server.accept();//等待客户端的连接,会发生阻塞
String info ="亲,你的宝贝已经发出,请注意查收!\n";
OutputStream out=s.getOutputStream();
BufferedOutputStream bo=
new BufferedOutputStream(out);
bo.write(info.getBytes());
bo.close();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
客户端代码:
public class ClientDemo {
/**
* @param args
* 客户端
*/
public static void main(String[] args) {
try {
//指定需要连接的服务器Ip地址和端口号
Socket s=new Socket("192.168.1.100",8888);
System.out.println("已经连接上服务器,请传输数据。。。");
InputStream in=s.getInputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(in));
String info=br.readLine();
System.out.println(info);
br.close();
in.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
连接建立之后,服务器和客户端之间就可以进行简单的数据传输。