差不多有半年没发技术博客了,这期间并没有在偷懒,而是在专注一款开源框架的开发.
关于ES,基本大家都在用其官方封装好的RestLowLevelClient和RestHighLevelClient进行开发,但在使用过程中发现其功能虽然十分强大,但用起来却不太友好,总结了一下主要有如下痛点:
- Api对开发不太友好,即便很简单的查询,也要写大量代码
- 对于字段名需要以字符串的方式进行查询,代码中不可避免大的出现大量魔法值,一旦模型字段名称发生改变,就需要去改代码,还可能出现漏改,导致bug
- 语法不通用,需要重新学习ES的一套语法,但ES在项目中使用的频率远不及MySQL这类传统数据库高,导致大多数开发需要去熟悉ES的语法,但时间长了又容易忘,浪费开发大量时间和精力
- 其它...
为了解放开发,让开发节省更多时间和精力去陪陪家人和女友,我耗时半年左右时间,开发了一套轻量级框架,解决了上述所有问题,其使用体验甚至不亚于现在国内排名第一的ORM框架Mybatis-Plus,经过大量测试,可以节省约三分之二的代码量,屏蔽了语言特性,只需要懂MySQL即可上手,应届生亦可轻松上手,且性能几乎与使用官方提供的RestHighLevelClient无异,底层仍使用RestHighLevelClient,只是做了一些增强,保留了其拓展性. 多余的我就不多吹了,这里只是做个预告,因为目前文档还没有写好,本来想赶在今天1024给大家一份节日礼物,但工作原因,实在没来得及弄完,只能以预告的形式先与大家见面,毕竟今天1024,特殊的节日,过去几年都没在今天发布过博客,这次不能再错过了.
火钳刘明,我预期它未来能成为国内一流和超火的开源ES框架,目前已在申请专利中,立帖为证,过阵子与大家见面.