网站首页 > 开源技术 正文
一、前言
mica-ip2region 是开源项目 ip2region 的 stater 封装,目的是方便 spring boot 用户使用。
二、使用
2.1 maven
<dependency>
<groupId>net.dreamlu</groupId>
<artifactId>mica-ip2region</artifactId>
<version>${version}</version>
</dependency>
2.2 gradle
compile("net.dreamlu:mica-ip2region:${version}")
2.3 配置说明(已经内置,可忽略)
注意:mica 都会第一时间同步更新 ip2region.db 文件,一般不需要手动配置。
配置项 | 默认值 | 说明 |
mica.ip2region.db-file-location | classpath:ip2region/ip2region.db | ip2region.db 文件的地址,默认内置的文件 |
maven 自定义 ip2region.db 文件注意事项:
maven resources 拷贝文件是默认会做 filter,会导致我们的文件发生变化,导致不能读,pom 中你需要添加下面的配置。
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>db</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</configuration>
</plugin>
很多同学在使用 ip2region 原生 jar 包的时候遇到这个问题。
三、使用文档
3.1 注入 bean
@Autowired
private Ip2regionSearcher regionSearcher;
3.2 方法说明
/**
* ip 位置 搜索
*
* @param ip ip
* @return 位置
*/
@Nullable
IpInfo memorySearch(long ip);
/**
* ip 位置 搜索
*
* @param ip ip
* @return 位置
*/
@Nullable
IpInfo memorySearch(String ip);
/**
* ip 位置 搜索
*
* @param ptr ptr
* @return 位置
*/
@Nullable
IpInfo getByIndexPtr(long ptr);
/**
* ip 位置 搜索
*
* @param ip ip
* @return 位置
*/
@Nullable
IpInfo binarySearch(long ip);
/**
* ip 位置 搜索
*
* @param ip ip
* @return 位置
*/
@Nullable
IpInfo binarySearch(String ip);
/**
* 获取地址信息
*
* @param ip ip
* @return 地址
*/
@Nullable
String getAddress(long ip);
/**
* 获取地址信息
*
* @param ip ip
* @return 地址
*/
@Nullable
String getAddress(String ip);
/**
* 获取地址信息包含 isp
*
* @param ip ip
* @return 地址
*/
@Nullable
String getAddressAndIsp(long ip);
/**
* 获取地址信息包含 isp
*
* @param ip ip
* @return 地址
*/
@Nullable
String getAddressAndIsp(String ip);
3.3 使用示例
/**
* ip2region 服务
*
* @author L.cm
*/
public class Ip2regionServiceImpl implements IIp2regionService {
@Autowired
private Ip2regionSearcher regionSearcher;
@Override
public String getAddress(String ip) {
return regionSearcher.getAddress(ip);
}
}
四、关于微服务组件集 mica
大家好,我是 mica 微服务组件集的开源作者,mica 开源三年多,我们一直在完善生态。目前已经开源了 mica-auto(Spring boot stater 开发利器)、mica(微服务组件集)、mica-mqtt(基于 t-io 的物联网 mqtt 组件),欢迎使用和反馈。也欢迎关注我,谢谢大家!!!
- 上一篇: 祸害阿里云宕机3小时的IO HANG究竟是什么?
- 下一篇: 性能分析-IO(性能分析 火焰图)
猜你喜欢
- 2024-10-19 MySQL数据库十大经典错误案例(mysql数据库报错)
- 2024-10-19 「夜读」自我提升的10个好习惯,请逼自己养成
- 2024-10-19 通过提取神经元知识实现人脸模型压缩:MobileID可在移动设备上快速运行
- 2024-10-19 中华UB:做全球一流数字资产交易所
- 2024-10-19 敏矽微电子Cortex-M0学习笔记12-电容触摸按键实例
- 2024-10-19 零基础上手,秒识别检测,IDEA研究院发布全新T-Rex模型
- 2024-10-19 Linux内核也感到危机了,不改变将有可能被淘汰
- 2024-10-19 IOGSMT,让你想法落地变成现实(在团队角色中善于把想法变成现实的是哪种角色)
- 2024-10-19 红帽可引导容器BOOTC技术(四)-升级和回滚
- 2024-10-19 国产操作系统-UOS系统信息查看(国产操作系统都有哪些)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)