java 获取ip地址_java基础学习:网络编程

01adf85fc9c411c6f8d6c21338ecea7a.png

1.网络概念

把多台计算机通过物理线路连接起来,就形成了网络。目的在于交换数据和共享信息。

1.1 网络通信的三要素

【1】IP地址:唯一标识网络上的每一台计算机。两台计算机之间通信的必备有素

【2】端口号:计算机中应用的标号(代表一个应用程序)

0-1024系统使用或保留端口

常见端口:http:80 stmp: 25 ftp:21

有效端口0-65536,开发者可以的端口是1025-65536之间。一些第三方引用如 mysql:3306 oracle:1251。

【3】通信协议:通信的规则 TCP,UDP

1.2 网络通信模型

89d159b8fc9554ea257830a8c14d1e9f.png

IP地址分类

880a27eca7a0fa80ca35013e7d8d7ffa.png

特殊IP

• 0.0.0.0:本机

• 127.0.0.1:本机回环地址,用于本机测试

• 255.255.255.255:当前子网,一般用于向当前子网广播信息

2. InetAddress

InetAddress 表示IP地址。

public 

3. TCP编程

TCP编程中,如果要完成通信,通信双方必须要创建socket,通过socket完成通信。

TCP通信步骤:

[1] 服务器启动ServerSocket作为通信的Server端,等待客户端链入。

[2] 客户端创建Socket作为通信的Client端

[3] Client端链入Server端后建立可靠的双向的持续性的点对点的通讯连接,即可通信。

例:完成一次单向通信。(服务器端)

import 

客户端

import 

常见问题:

[1] 端口被占用(java.net.BindException: Address already in use: JVM_Bind)

[2] 服务器未启动(java.net.ConnectException: Connection refused: connect)

[3] 连接超时异常( SocketTimeoutException)

当网速很慢时,可能发生连接超时异常。

例:上传一张图片到服务器

客户端

import 

服务端

import 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值