mica 2.0.3-GA 发布,优化 mica-http
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.3-GA 更新说明
- 📝 完善 mica 2.x 使用文档.
- ✨ mica-http 微调日志,添加 system out log.
- ✨ mica-http 添加 asString(Charset charset) 方法。
- ✨ mica-http ResponseSpec 添加 json path 系列方法。
- ✨ mica-http 优化 github #26 .
- ✨ mica-ip2region 更新 ip2region.db 文件。
- ✨ mica-core 优化 StringUtil,添加 startWith、endWith 方法.
- ✨ mica-core 优化 DateUtil 优化 minus、plus months、years 提升5倍性能 gitee #IW2IM.
- ✨ mica-redis 优化 MicaRedisCache 构造器 github #27.
- ⬆️ 升级 spring boot 到 2.3.1.RELEASE。
mica-http简单、好用、高性能的http客户端
示例代码:
// 同步请求 url,方法支持 get、post、patch、put、delete HttpRequest.get("https://www.baidu.com") .useConsoleLog(LogLevel.HEADERS) //使用控制台日志,同类的有 .useSlf4jLog(),日志级别为 BODY .addHeader("x-account-id", "mica001") // 添加 header .addCookie(new Cookie.Builder() // 添加 cookie .name("sid") .value("mica_user_001") .build() ) .query("q", "mica") //设置 url 参数,默认进行 url encode .queryEncoded("name", "encodedValue") .formBuilder() // 表单构造器,同类 multipartFormBuilder 文件上传表单 .add("id", 123123) // 表单参数 .retryOn(responseSpec -> !responseSpec.isOk()) // 结合 spring retry 进行结果集断言 .proxy(InetSocketAddress.createUnresolved("127.0.0.1", 8080)) // 设置代理 .execute() // 发起请求 .asJsonNode(); // 结果集转换,注:如果网络异常等会直接抛出异常。 // 同类的方法有 asString、asBytes // json 类响应:asJsonNode、asValue、asList、asMap、atJsonPath、,采用 jackson 处理 // file 文件:toFile
示例日志打印:
ConsoleLogger: --> GET https://www.baidu.com/?test=a&name=%E5%BC%B5%E4%B8%89&x=1&abd=MTIzJiQjJQ%3D%3D&abc=MTIzJiQjJQ%3D%3D ConsoleLogger: User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36 ConsoleLogger: --> END GET ConsoleLogger: <-- 200 OK https://www.baidu.com/?test=a&name=%E5%BC%B5%E4%B8%89&x=1&abd=MTIzJiQjJQ%3D%3D&abc=MTIzJiQjJQ%3D%3D (344ms) ConsoleLogger: Bdpagetype: 1 ConsoleLogger: Bdqid: 0xf7759b3500101638 ConsoleLogger: Cache-Control: private ConsoleLogger: Connection: keep-alive ConsoleLogger: Content-Type: text/html;charset=utf-8 ConsoleLogger: Date: Mon, 29 Jun 2020 00:49:30 GMT ConsoleLogger: Expires: Mon, 29 Jun 2020 00:49:30 GMT ConsoleLogger: P3p: CP=" OTI DSP COR IVA OUR IND COM " ConsoleLogger: P3p: CP=" OTI DSP COR IVA OUR IND COM " ConsoleLogger: Server: BWS/1.1 ConsoleLogger: Set-Cookie: BAIDUID=65575AF63CB9DA82E678269FFA4DF15D:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com ConsoleLogger: Set-Cookie: BIDUPSID=65575AF63CB9DA82E678269FFA4DF15D; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com ConsoleLogger: Set-Cookie: PSTM=1593391770; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com ConsoleLogger: Set-Cookie: BAIDUID=65575AF63CB9DA82BF723572E9FA07E1:FG=1; max-age=31536000; expires=Tue, 29-Jun-21 00:49:30 GMT; domain=.baidu.com; path=/; version=1; comment=bd ConsoleLogger: Set-Cookie: BDSVRTM=15; path=/ ConsoleLogger: Set-Cookie: BD_HOME=1; path=/ ConsoleLogger: Set-Cookie: H_PS_PSSID=1431_31669_21083_32139_32046_31322_32108_22160; path=/; domain=.baidu.com ConsoleLogger: Strict-Transport-Security: max-age=172800 ConsoleLogger: Traceid: 1593391770045661850617831328951579973176 ConsoleLogger: X-Ua-Compatible: IE=Edge,chrome=1 ConsoleLogger: Transfer-Encoding: chunked ConsoleLogger: <-- END HTTP
文档

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
风铃虫 2.2.0 发布,优化任务停止机制
风铃虫是一款轻量级的高效爬虫工具,配置简单,方便二次开发,能抓取js渲染的网页,可以抓取任何数据,支持保存网页快照,智能防封杀,天然适合分布式。 本次更新内容如下: 1 修复测试接口中传入参数异常时不能正常工作的bug。 2 优化多任务多线程时的同步机制,能更加灵活扩展 3 优化任务状态监控机制 4 优化任务停止逻辑,停止逻辑更加合理 5 其他一些bug优化 风铃虫平台效果演示 1 配置基本信息 2 配置链接爬取信息 3 配置站点信息 4 提取项配置 5 属性提取配置
- 下一篇
每日一博 | 关于消息推送服务的十问十答
近日小编受邀参与了开源中国高手问答栏目,收集到很多与推送相关的问题,也发现很多开发者都在使用消息推送服务,小编甚是欢喜。 相关阅读:关于移动消息推送,你了解多少? 随着移动互联时代进入下半场,寻找流量红利的突破口成为每个互联网人思考的命题。互联网的运营一切都是为了增长,毫无疑问,增长是运营的使命。 为了引出本文的主题,小编都上升到使命的高度了。 言归正传,消息推送服务承载着解决增长难题的重任,对于移动应用来说,消息推送服务已经成为“标配”,据相关数据显示,App集成的开发服务中,消息推送占比最高,且渗透率逐年递增。 消息推送虽然并不陌生,但围绕推送到达率、推送策略、心跳建设、技术选型等,大家还存在很多疑问。根据用户调研,小编整理了关于消息推送服务的十问十答,为大家揭开消息推送的神秘面纱。 1、Android系统和iOS系统的消息推送有何区别? Android和iOS都从属于移动消息推送,基本上可以分为自建通道和厂商通道。 在自建通道上,Android和iOS所采用的技术手段都差不多,实现方式上可能略有差别, 在厂商通道上,由Android开源的特性,Google提供了自己的FireBa...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7