IP 存放

作者: 黄二的NPE | 来源:发表于2018-07-08 11:56 被阅读4次
  • IP的存放

在MySQL中,IP如果存放为varchar类型,一般需要46个字节(15*3+1),但是如果存放为无符号整形,只需要4个字节,相比之下,存放为无符号整形可以节省更多的存储空间。

  • Java代码

string转long
    public static long stringToLong(String ip){
        return Optional.ofNullable(ip.split("\\."))
                .map(ips -> (Long.parseLong(ips[0]) << 24) + (Long.parseLong(ips[1]) << 16) + (Long.parseLong(ips[2]) << 8) + (Long.parseLong(ips[3])))
                .orElse(0L);
    }
long转string
    public static String longToString(Long ip){
        StringBuffer sb = new StringBuffer();
        IntStream.range(0,4).forEach(i -> sb.append((ip >> 8 * (3 - i)) & 0xFF).append("."));
        return sb.substring(0, sb.length() - 1);
    }
  • 数据库

string转long
select INET_ATON('192.168.0.1');//3232235521
long转string
select INET_NTOA(3232235521);//192.168.0.1

存储

ip 存放数据库,可以用ip int(11) UNSIGNED,无符号int类型

相关文章

  • IP 存放

    IP的存放 在MySQL中,IP如果存放为varchar类型,一般需要46个字节(15*3+1),但是如果存放为无...

  • 映射、集合与优先级队列

    集合(set) 集合的特点: 不存放重复的元素 常用于去重(存放新增 IP,统计新增 IP 量 存放词汇,统计词汇...

  • 【恋上数据结构与算法一】(十二)集合(Set)、映射(Map)

    集合(Set) ◼ 集合的特点不存放重复的元素常用于去重✓存放新增 IP,统计新增 IP 量✓ 存放词汇,统计词汇...

  • 数据结构-集合(Set)

    集合的特点 不存放重复的元素 常用于去重 存放新增 IP,统计新增 IP 量 存放词汇,统计词汇量... 接口设计...

  • 十九、集合Set

    1、简介 集合的特点 不存放重复的元素 常用于去重2.1. 存放新增 IP,统计新增 IP 量2.2. 存放词汇,...

  • day11集合 映射 哈希表

    集合 集合的特点 不存放重复的元素 集合使用场合 存放新增IP,统计新增IP量;存放词汇,统计词汇量等 集合的接口...

  • 数据结构与算法(第一季):集合与映射

    一、集合(Set) 不存放重复的元素 常用于去重存放新增IP,统计新增IP量存放词汇,统计词汇量 集合的内部实现能...

  • 13_集合(Set)

    集合的特点 不存放重复的元素 集合的用处 常用于去重 存放新增IP,统计新增IP量 存放词汇,统计词汇量 集合的接...

  • 把IP地址存成 UNSIGNED INT

    很多程序员都会创建一个 VARCHAR(15) 字段来存放字符串形式的IP而不是整形的IP。如果你用整形来存放,只...

  • 【现学现忘&Shell流程控制】— 47.for循环练习1

    5、练习:判断合法IP地址脚本 准备:ip.txt文件中存放着一些IP地址,我们用脚本来判断其中的合法IP地址。 ...

网友评论

      本文标题:IP 存放

      本文链接:https://www.haomeiwen.com/subject/hsqouftx.html