• 离线版IP归属地查询


     这里简单介绍一下Ip2regionSearcher是什么?

    ip2region 是准确率 99.9% 的 IP 地址定位库,0.0x毫秒级查询,提供了 Java、PHP、C、Python、Node.js、Golang、C#、Rust、Lua的查询绑定和 Binary、B树、内存三种查询算法!

    Setp1:导入依赖 

    1. net.dreamlu
    2. mica-ip2region
    3. 2.5.6
    4. cn.hutool
    5. hutool-all
    6. 5.8.11

    提示:Ip2regionSearcher的和hutool工具包依赖包,这里导入hutool为了后期利用获取IP工具类

    Setp2:编写测试接口 

    1. import cn.hutool.extra.servlet.ServletUtil;
    2. import lombok.RequiredArgsConstructor;
    3. import net.dreamlu.mica.ip2region.core.Ip2regionSearcher;
    4. import net.dreamlu.mica.ip2region.core.IpInfo;
    5. import org.springframework.web.bind.annotation.GetMapping;
    6. import org.springframework.web.bind.annotation.RestController;
    7. import javax.servlet.http.HttpServletRequest;
    8. /**
    9. *

    10. * 测试控制器
    11. *

    12. *
    13. * @className: XController
    14. * @author: BertXie
    15. * @create: 2023-01-09 11:40
    16. */
    17. @RestController
    18. @RequiredArgsConstructor
    19. public class XController {
    20. private final Ip2regionSearcher searchSearcher;
    21. @GetMapping("/ip")
    22. public String getHomeLocation(HttpServletRequest request) {
    23. IpInfo ipInfo = searchSearcher.memorySearch(ServletUtil.getClientIP(request));
    24. return ipInfo != null ? ipInfo.getCity() : "未知星球";
    25. }
    26. }

    注意:这里注入了Ip2regionSearcher对象,并使用了memorySearch方法,会返回一个IP详情对象,还用到了Hutool工具获取IP的方法ServletUtil.getClientIP

    测试效果图

    提示:这里我是写的接口,你也可以直接写一个测试类,填入IP即可 

  • 相关阅读:
    Mysql中索引详解
    MQTT-主题基础
    【计算机组成原理】海明校验码
    vite vue3安装element-plus
    尚硅谷Vue系列教程学习笔记(3)
    java IO流详解
    vue 不相干的两个页面相互通信方式
    Q-Tester 3.4新版发布,增加了多种授权方式
    【MySQL】存储引擎简介、存储引擎特点、存储引擎区别
    【前端设计模式】之状态模式
  • 原文地址:https://blog.csdn.net/m0_55337678/article/details/132968410