zoukankan      html  css  js  c++  java
  • java中获取本机IP

    1.背景

    2.代码

    package com.XXX.common.util;
    
    import cn.hutool.core.util.StrUtil;
    import lombok.extern.slf4j.Slf4j;
    
    import java.net.Inet4Address;
    import java.net.InetAddress;
    import java.net.NetworkInterface;
    import java.net.SocketException;
    import java.util.ArrayList;
    import java.util.Enumeration;
    import java.util.List;
    
    @Slf4j
    public class HostUtil {
    
        private static String ipAddress = null;
    
        public static String getLocalIp() {
            if (!StrUtil.isEmpty(ipAddress)) {
                return ipAddress;
            }
            try {
                ipAddress = getLocalIpAddress();
            } catch (Exception e) {
                log.error("获取IP异常: ", e);
            }
            return ipAddress;
        }
    
        private static String getLocalIpAddress() throws SocketException {
            List<String> list = new ArrayList<>();
            Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
            while (networkInterfaces.hasMoreElements()) {
                NetworkInterface networkInterface = networkInterfaces.nextElement();
                Enumeration<InetAddress> addresses = networkInterface.getInetAddresses();
                while (addresses.hasMoreElements()) {
                    InetAddress address = addresses.nextElement();
                    if (!address.isLinkLocalAddress() && !address.isLoopbackAddress() && address instanceof Inet4Address) {
                        list.add(address.getHostAddress());
                    }
                }
            }
            return String.join(";", list);
        }
    }

    完美!

  • 相关阅读:
    在Ubuntu上安装PHPStudy组件
    手把手教你在Ubuntu上分别安装Nginx、PHP和Mysql
    ErrorKiller:Failed to decode response: zlib_decode(): data error
    HTTP和FTP上传文件的区别
    关于HTTP,你知道哪些?
    史上最全的FTP网址
    深入解读TCP/IP
    nefu 462 fib组合
    MZL's xor
    The Highest Mark(01背包)
  • 原文地址:https://www.cnblogs.com/newAndHui/p/14607067.html
Copyright © 2011-2022 走看看