「javaip归属地查询」查询ip地址归属

博主:adminadmin 2022-11-26 13:17:05 57

本篇文章给大家谈谈javaip归属地查询,以及查询ip地址归属对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java IP查询方法

Java编程查询IP地址归属地,可以调用淘宝提供的service查询,并且解析http请求返回的json串,代码如下:

package getAddressByIp;

import java.io.ByteArrayOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.URL;

import net.sf.json.JSONObject;

 

public class GetAddressByIp

{        

    /**

     * 

     * @param IP

     * @return

     */

    public static String GetAddressByIp(String IP){

        String resout = "";

        try{

         String str = getJsonContent(""+IP);

         System.out.println(str);

         JSONObject obj = JSONObject.fromObject(str);

         JSONObject obj2 =  (JSONObject) obj.get("data");

         String code = (String) obj.get("code");

         if(code.equals("0")){

             resout =  obj2.get("country")+"--" +obj2.get("area")+"--" +obj2.get("city")+"--" +obj2.get("isp");

         }else{

             resout =  "IP地址有误";

         }

        }catch(Exception e){

             

            e.printStackTrace();

             resout = "获取IP地址异常:"+e.getMessage();

        }

        return resout;

          

    }

    

    public static String getJsonContent(String urlStr)

    {

        try

        {// 获取HttpURLConnection连接对象

            URL url = new URL(urlStr);

            HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();

            // 设置连接属性

            httpConn.setConnectTimeout(3000);

            httpConn.setDoInput(true);

            httpConn.setRequestMethod("GET");

            // 获取相应码

            int respCode = httpConn.getResponseCode();

            if (respCode == 200)

            {

                return ConvertStream2Json(httpConn.getInputStream());

            }

        }

        catch (MalformedURLException e)

        {

            e.printStackTrace();

        }

        catch (IOException e)

        {

            e.printStackTrace();

        }

        return "";

    }

    

    private static String ConvertStream2Json(InputStream inputStream)

    {

        String jsonStr = "";

        // ByteArrayOutputStream相当于内存输出流

        ByteArrayOutputStream out = new ByteArrayOutputStream();

        byte[] buffer = new byte[1024];

        int len = 0;

        // 将输入流转移到内存输出流中

        try

        {

            while ((len = inputStream.read(buffer, 0, buffer.length)) != -1)

            {

                out.write(buffer, 0, len);

            }

            // 将内存流转换为字符串

            jsonStr = new String(out.toByteArray());

        }

        catch (IOException e)

        {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

        return jsonStr;

    }

}

java如何查询本机ip地址和mac地址

// 获取mac地址

  public static String getMacAddress() {

    try {

      EnumerationNetworkInterface allNetInterfaces = NetworkInterface.getNetworkInterfaces();

      byte[] mac = null;

      while (allNetInterfaces.hasMoreElements()) {

        NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();

        if (netInterface.isLoopback() || netInterface.isVirtual() || !netInterface.isUp()) {

          continue;

        } else {

          mac = netInterface.getHardwareAddress();

          if (mac != null) {

            StringBuilder sb = new StringBuilder();

            for (int i = 0; i  mac.length; i++) {

              sb.append(String.format("%02X%s", mac[i], (i  mac.length - 1) ? "-" : ""));

            }

            if (sb.length()  0) {

              return sb.toString();

            }

          }

        }

      }

    } catch (Exception e) {

      _logger.error("MAC地址获取失败", e);

    }

    return "";

  }

 

  // 获取ip地址

  public static String getIpAddress() {

    try {

      EnumerationNetworkInterface allNetInterfaces = NetworkInterface.getNetworkInterfaces();

      InetAddress ip = null;

      while (allNetInterfaces.hasMoreElements()) {

        NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();

        if (netInterface.isLoopback() || netInterface.isVirtual() || !netInterface.isUp()) {

          continue;

        } else {

          EnumerationInetAddress addresses = netInterface.getInetAddresses();

          while (addresses.hasMoreElements()) {

            ip = addresses.nextElement();

            if (ip != null  ip instanceof Inet4Address) {

              return ip.getHostAddress();

            }

          }

        }

      }

    } catch (Exception e) {

      _logger.error("IP地址获取失败", e);

    }

    return "";

  }

希望能帮助到你

怎么看ip属地

不论是手机还是电脑,查看自己ip地址,有以下几种常见的方式:

1,浏览器百度查询:打开手机/电脑的浏览器,百度输入:ip,显示的结果就是本地的ip地址信息

2,指定网址查询:打开浏览器,输入ip138.com打开的网站即显示了ip归属地信息

3,通过指令查询(仅限电脑端):点击电脑左下角“菜单”,输入“cmd”,打开【命令提示符】栏 — 输入查看本地IP地址命令“tracert ”,按Enter,就可以查找本地IP地址。

以上几种方式,就是查看自己ip归属地的方式,如果是需要查看其它ip地址的归属地,则通过第二种方式,在网页端查询即可。

javaip归属地查询的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于查询ip地址归属、javaip归属地查询的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-26,除非注明,否则均为首码项目网原创文章,转载请注明出处。