mica 2.0.1 发布新增最好用的 ip2region boot stater
mica(云母)
mica 由如梦技术内部的 lutool(撸秃)演变而来。lutool 诞生于 2017 年,受 jhipster 启发逐步形成一个微服务的核心集。
因 lutool 名称与功能不太符合,故在2019年开源时将其改名为 mica(云母),寓意为云服务的基石。
mica 2.x核心依赖
mica 基于 java 8,没有历史包袱,支持传统 Servlet 和 Reactive(webflux)。采用 mica-auto 自动生成 spring.factories 和 spring-devtools.properties 配置,仅依赖 Spring boot、Spring cloud 全家桶,无第三方依赖。市面上鲜有的微服务核心组件。
依赖 | 版本 |
---|---|
Spring Boot | 2.2.x |
mica 2.0.1 更新说明
- :sparkles: 开源 mica-ip2region 组件。
- :zap: mica-core 优化 R.isNotSuccess 改为 isFail。
- :bug: mica-redis jackson class info。
- :bug: mica-redis jackson findAndRegisterModules。
- :wrench: travis 替换为 Github actions,用于构建和 Snapshot 版本自动发布。
- :arrow_up: update spring boot to 2.2.7.RELEASE。
版本号说明
release
版本号格式为 x.x.x.发版当然日期
,避免和内部的版本号冲突。
snapshots
版本号格式为 x.x.x-SNAPSHOT
,snapshots
版每次提交后会自动构建。
引用
mica-bom,可以简化依赖和依赖版本统一处理,避免jar冲突。
<dependencyManagement> <dependencies> <dependency> <groupId>net.dreamlu</groupId> <artifactId>mica-bom</artifactId> <version>2.0.1.20200510</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
注意
:maven 是按先后顺序进行依赖的,所以 mica-bom 顺序按 mica
、spring boot
、spring cloud
依次添加。
mica-ip2region 最好用的 ip2region spring stater
maven
<dependency> <groupId>net.dreamlu</groupId> <artifactId>mica-ip2region</artifactId> <version>${version}</version> </dependency>
gradle
compile("net.dreamlu:mica-ip2region:${version}")
配置说明(已经内置,忽略)
配置项 | 默认值 | 说明 |
---|---|---|
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
ip2region Gitee 源码地址:https://gitee.com/lionsoul/ip2region
我们都会同步更新 ip2region.db
文件,一般不需要手动配置。
使用文档
注入 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 btreeSearch(long ip); /** * ip 位置 搜索 * * @param ip ip * @return 位置 */ @Nullable IpInfo btreeSearch(String ip); /** * ip 位置 搜索 * * @param ip ip * @return 位置 */ @Nullable IpInfo binarySearch(long ip); /** * ip 位置 搜索 * * @param ip ip * @return 位置 */ @Nullable IpInfo binarySearch(String ip);
文档
- 文档地址(语雀-可关注订阅):https://www.yuque.com/dreamlu
- 示例项目:https://github.com/lets-mica/mica-example
欢迎关注我们的公众号:JAVA架构日记,精彩内容每日推送。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Hologres2020年4月刊
交互式分析(Hologres)2020年4月刊将会为您带来4月产品、技术最新动态,欢迎订阅交互式分析月刊。欢迎详细阅读本次月刊并结合业务进行实践,若需要技术探讨或者任何问题欢迎加入交互式分析钉钉群,二维码见文末。 【4月重要功能发布】 1.【新功能】HoloStudio可视化能力加强HoloStudio支持一键批量创建外部表和一键同步MaxCompute数据,加强Hologres对接MaxCompute的能力,同时HoloStudio也支持一键COPY上传本地文件。适用客户:Hologres公共云 2.【新功能】HoloStudio标准化绑定Holostudio支持DataWorks工作空间标准化绑定,开发、生产环境相隔离,提高业务数据的安全性。详见文档绑定数据库。适用客户:Hologres公共云 3.【新功能】DataV支持Hologr
- 下一篇
Java 多线程启动为什么调用 start() 方法而不是 run() 方法?
Java 多线程启动为什么调用 start() 方法而不是 run() 方法? 多线程在工作中多多少少会用到,我们知道启动多线程调用的是 start() 方法,而不是 run() 方法,你知道原因吗? 在探讨这个问题之前,我们先来了解一些多线程的基础知识~ 线程的状态Java 中,定义了 6 种线程状态,在 Thread 类可以找到: // 为了节约空间,我删除了注释public enum State { NEW,//初始状态 RUNNABLE,//运行状态 BLOCKED,// 阻塞状态 WAITING,//等待状态 TIMED_WAITING,//超时等待状态 TERMINATED;//终止状态 }这 6 种状态之间的关联,可以看下面这张图: 这张图描述的还是非常详细的,结合这张图,来说说这几种状态分别代表着什么意思: 1、NEW 表示线程创建成功,但没有运行,在 new Thread 之后,没有 start 之前,线程都处于 NEW 状态;2、RUNNABLE 表示线程正在运行中,当我们运行 strat 方法,子线程被创建成功之后,子线程的状态变成 RUNNABLE;3、TERM...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8安装Docker,最新的服务器搭配容器使用
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7安装Docker,走上虚拟化容器引擎之路