学习java第二十三天
网络编程:
三大要素:
- ip
- 端口号
- 协议
ip:
获取IP地址的类:InetAddress
常规的方法:
public static InetAddress getLocalHost().返回本地主机
public String getHostAddress()获取ip地址
public String getHostName()获取ip的主机名
端口号:
软件开启时,系统随机生成一个,软件关闭时系统回收
常用软件的端口号:
Tomcat:8080
oracle:1521
mysql:3306
qq:4000
协议:
网络传输的规范:协议分为7层
传输层:TCP UDP+ xmpp协议
web 阶段: http协议 https协议:一次性的连接
UDP面向无连接协议:传输数据快
TCP面向连接协议:传输数据慢
TCP:
类Socket:
套接字(ip地址+端口号)
构造方法:
public Socket(String host, int port)创建一个流套接字并将其连接到指定主机上的指定端口号。
常规方法:
public Socket(String host)
创建一个流套接字并将其连接到指定主机上的指定端口号。
public InputStream getInputStream() 返回此套接字的输入流。
public OutputStream getOutputStream() 返回此套接字的输出流。
public void shutdownOutput() 禁用此套接字的输出流。(类似于flush() )
发消息过程:
实例化socket()对象
通过对象OutputStream
调用write()
调用shutdownOutput()
//等待服务器回复。。
5.拿到输入流InputStream
6.ner BufferReader(new InputStreamReader(ner FileInputStream))
7.关闭资源
Socket socket =new Socket("ip地址",端口号);
OutputStream os =socket.getOutputStream();
os.write(byte[] b);
socket.shutdownOutput(