springboot基础

springboot基础,第1张

前言

最近各大平台都在显示用户的地址,本章介绍如何将ip转地址。

代码中使用到的库文件基于ipdb,官网地址:https://www.ipip.net/
本章代码已分享至Gitee:https://gitee.com/lengcz/springboot-ipdb.git

基于ipdb库的方式查询ip对应的地址
  1. 引入依赖

        <dependency>
            <groupId>net.ipipgroupId>
            <artifactId>ipdbartifactId>
            <version>1.1.3version>
        dependency>
  1. 编写代码
package com.lengcz.springbootipdb.util;

import net.ipip.ipdb.City;
import java.io.IOException;

/**
 * 从城市查询
 *
 * @author lengcz
 */
public class IpdbUtil {

    private static City city_DB;

    static {
        try {
            city_DB = new City(new IpdbUtil().getClass().getResource("/").getPath() + "ipipfree.ipdb");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    /**
     * 通过IP查询城市
     *
     * @param ip            (IPv4或者 IPv6)
     * @param language,例如CN
     * @return 例如[中国, 广东, 深圳]
     */
    public static String[] find(String ip, String language) {
        try {
            return city_DB.find(ip, language);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}
  1. 将ipipfree.db存入资源文件下(源码中已包含)
  2. 测试
 System.out.println(Arrays.toString(IpdbUtil.find("123.125.71.38", "CN")));


5. 启动项目,可以查到ip所对应的地址。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/872126.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存