通信小结

java通信基础知识
java中关于通信编程一块,技术点高深莫测,且在应用处理方面能力是很强的。而通信在没有接触过的人看来好像是很深奥的技术,其实只要记住一点就足够慢慢吃透通信方面的编程知识了,那就是通信最底层永远都是一个一个字节传送的,这一点是通信核心,而且目前完全没有改变的迹象,至少还没有听说到一个字节的传送会变成一个int的传送的前沿消息吧。接下来就介绍下通信中最简单的基本语法:
(一)建立服务器的语法
ServerSocket server = new ServerSocket (port);
创建ServerSocket服务器对象,port是端口号,一般电脑端口号有两万多个,但0~1024通常是默认端口号,比如说80端口号是默认的浏览器端口号。当想创建服务器对象的时候,可以通过netstat -an命令查看机器指定端口是否已经打开了来确定服务器对象有没有创建成功。
(二)开通服务器,让服务器等待客户连接,当有客户连接时,一下语句会返回一个连接对象:Socket client = server.accept();
(三)创建客户端
Socket client = new Socket("服务器IP",port);
(四)取得流对象
ins = clien.getInputStream();
ous = clien.getOutputStream();
当取得这两个流对象后,就可以向连接到的对方发送数据了,服务器端跟客户端是对等关系的。在理解输入输出流上面,本人认为可以这样去想象连接的双方的流关系,可以假设在双方连接的虚拟管道上,有一个类似中转站一样的“桶”,服务器端输出去的数据放在桶里面,客户端的输入流读到的就是服务器端输出的放在桶里面的数据,不取走便阻塞在那里。相对于客户端输出的数据也是一样,输出后存在桶里,等服务器端取走,客户端不断输出去,假设服务器不取走,则服务器的输入流便阻塞,而数据是可以不断累加进桶里的。至于这个桶的容量有多大,本人目前尚未研究。
(五)协议
什么是协议?协议就是一套发送和接受要用到的解析数据规则。通信双方的通信协议必须一致,否则就像人跟狗说话一样,语言不通。发送方再发送消息时要确保发送出去的是符合协议规定的格式的消息,而接收方则按照协议规则去读取并解析读到的消息,还原消息本来的意义。换句话说,协议就是确保消息能够按照规定格式发送或者被接受,之后按照协议解析出本来意义的一套规则,而不是语法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值