前言
mica-ip2region 是开源项目 ip2region 的 stater 封装,目的是方便 spring boot 用户使用。
使用
maven
<dependency>
<groupId>net.dreamlu</groupId>
<artifactId>mica-ip2region</artifactId>
<version>${version}</version>
</dependency>
复制代码
gradle
compile("net.dreamlu:mica-ip2region:${version}")
复制代码
配置说明(已经内置,可忽略)
注意: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 包的时候遇到这个问题。
使用文档
注入 bean
@Autowired
private Ip2regionSearcher regionSearcher;
复制代码
方法说明
/**
* 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);
复制代码
使用示例
/**
* 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 组件),欢迎使用和反馈。也欢迎关注掘金 《mica 微服务》 专栏,谢谢大家!!!

评论抽奖
有幸参与了掘金申请掘金周边礼物活动,选取2个优质评论送出掘金徽章,快来说说你心中最好用的 mica 组件是哪个!!!
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END























![[桜井宁宁]COS和泉纱雾超可爱写真福利集-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/4d3cf227a85d7e79f5d6b4efb6bde3e8.jpg)

![[桜井宁宁] 爆乳奶牛少女cos写真-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/d40483e126fcf567894e89c65eaca655.jpg)