ISO组织的OSI模型:
七层模型:
1应用层 2表示层 3 会话层 4 传输层 5 网络层 6 数据链路层 7物理层
四层模型TCP/IP
1 应用层 2传输层 3网络互联层 4网络接口层
socket 编程也叫套接字编程,发送发用,例如:
public class TestServer {
public static void main(String[] args) {
// TODO Auto-generated method stub
ServerSocket server = null;
try {
server = new ServerSocket(9527);
Socket ss = server.accept();//开始监听
BufferedReader br = new BufferedReader(new InputStreamReader(ss.getInputStream()));
String msg = br.readLine();
System.out.println("客户端说:" + msg);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
if(server != null){
try {
server.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
接受方(服务器)serversocket
public class TestClient {
public static void main(String[] args) {
// TODO Auto-generated method stub
String msg = JOptionPane.showInputDialog("请输入你要发送的消息:");
Socket client = null;
try {
client = new Socket("126.0.0.1", 9527);
//方式一
// client.getOutputStream().write(msg.getBytes());
//方式二
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(client.getOutputStream()));
bw.write(msg);
bw.flush();//冲刷缓冲区
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
if(client != null){
try {
client.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}