Web 发展基础 :
Socket 编程:
多台电脑之间进行数据的传 输,这就是网络编程的开端和基础,客户端请求服务器端通信
服务器Server:
/**
* 服务器端,接收客户端请求并给出简单的响应
* @author Administrator
*/
public class Server {
public static void main(String[] args) throws IOException {
//1、创建服务器,指定端口ServerSocket(int port)
ServerSocket socket=new ServerSocket(8888);
//2、接收客户端连接
Socket client=socket.accept();
System.out.println("******************");
//获取数据的输入流
InputStream is=client.getInputStream();
//使用字符缓存流
BufferedReader br=new BufferedReader(new
InputStreamReader(is));
String msg="";
while((msg=br.readLine())!=null){
System.out.println(msg);
}
br.close();
}
}
客户端client:
/**
* 客户端:向服务器发送请求,并发送简单的消息
* @author Administrator
*/
public class Client {
public static void main(String[] args) throws UnknownHostException,
IOException {
//创建客户端 必须指定服务器+端口
Socket client=new Socket("localhost",8888);
//发送消息 请求资源
//获取发送流
OutputStream os=client.getOutputStream();
BufferedWriter br=new BufferedWriter(new
OutputStreamWriter(os));
//写出消息,发送内容
String msg="hello I need some source";
br.write(msg);
br.close();
}
}
通信的条件:
1、需要有服务器端(server) :等待被请求,需要暴露 ip 和 port
2、需要有客户端(client):主动发起请求 ,知晓服务端的 ip 和 port
3、通信规则(协议):TCP/IP 协议