自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(180)
  • 收藏
  • 关注

原创 Java BigDecimal 详解

BigDecimal是Java在java.math包中提供的线程安全的API类,用来对超过16位有效位的数进行精确的运算。因为Double和Float会丢失精度,所以开发中,如果我们需要精确计算的结果,则必须使用BigDecimal类来操作。​BigDecimal所创建的是对象,故我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。

2024-03-13 01:41:51 798 1

原创 Java8 Stream(12)Collectors.groupingBy 分组统计详解

1 List 转 Map1.1 使用 groupingBy 分组根据部门分组按照自定义Key分组多级分组根据部门分组,求ID的List根据部门分组,Count人数根据部门分组,求Sex的Set根据部门分组,求Sex的去重个数 它接受两个参数:和。其中1.2 使用 partitioningBy 分区1.3 使用 toMapList 转 MapList 转 Map2 求最大值、最小值、平均值、总和2.1 不分组,直

2023-07-26 00:14:54 6383 1

原创 【Elasticsearch教程21】分页查询以及Array数组排序 nested排序 详细案例

默认情况下,ES搜索结果hits里有10条结果,我们可以使用from和size这2个参数实现分页查询

2022-09-20 16:28:07 3028 1

原创 【Elasticsearch教程20】Pinyin拼音分词器 以及多音字修改

全民程序员们,大家好,我练习时长两年半的个人练习生-亚瑟王,喜欢钢琴、写bug、单挑吕布和狂铁。人员通讯录,不确定人名具体是哪个汉字,只知道读音,可以输入汉字+全拼音、汉字+拼音首字母、拼音首字母等股票名称,炒股的人都知道,股票太多,记住所有股票code是不可能的,所以常用拼音首字母查股票。Medcl大佬为我们提供了Pinyin分词器,可以让我们非常方便的使用拼音搜索文档。作为大龄程序员,30多岁了,不需要涉及太多技术,得潜心专研一两个技术,并戒掉浮躁,在项目实践中打磨自己。

2022-09-20 11:48:24 3153 1

原创 【Elasticsearch教程19】IK分词器 ik_max_word、ik_smart

通过上表,可以看出在好处是保存文档时,已经索引尽可能多的词,而在搜索文档时,没有必要对搜索关键字拆分的很细,这样提高了查询的效率。安装IK分词器的教程网上太多了,我这里就不再赘述了。全民制作人,大家好,我是练习时长2年半的个人练习生亚瑟王,喜欢ES、钢琴、鼓励队友。分词器对中文不友好,会将中文分割成一个个汉字。IK分词器的作者对这个项目维护的比较积极,能紧跟ES的最新版本。这1个词条,直接拿"亚瑟王"去匹配文档,可以匹配成功。执行如下命令,看字符串是如何拆分后索引的。说明是"王"这个字匹配到文档的。

2022-09-16 18:33:42 3116

原创 现在的每一天都多么奢侈

亮仔,大家都这么叫他,他在我对面的床,个子不高,比较瘦,脸很白,再配上天然的卷发。毕业后,没怎么联系过,有一天看到他QQ发了说说,大概是得了什么病,他自己也很奇怪。大学里经常和他一起玩魔兽争霸的dota地图,火炬之光,和他一起追《权利的游戏》。后来我也没问过,突然有一天,宿舍里和亮仔同乡的舍友发消息说亮仔已经走了。昨天大学时宿舍的舍长突然联系,说已经回到大学母校了,说是看望老师。好了,活着的人是幸运的,生活还得继续,下班回家有可爱的家人相伴。我问他怎么了,他只是简单的说得了肠道上的病,已经躺床上好久了。

2022-09-14 07:12:28 455 4

原创 SpringBoot教程(16) 什么是RESTful?

REST(Representational State Transfer)描述了一个架构样式的网络系统,比如 web 应用程序。REST并没有一个明确的标准,而更像是一种设计的风格。如果一个架构符合REST原则,就称它为 RESTful架构。

2022-09-14 07:02:25 686 1

原创 英语单词和词组笔记

英语单词和词组笔记

2022-09-13 15:07:00 245

原创 Linkers of Addition

英语中常用的Linkers of Addition可以让我们的语句更加有结构。

2022-09-13 14:59:38 465

原创 What do you like about the working hours and benefits at PA?

My favorite two aspects of working hours of EPAM are flextime and homeworking.Employees can start and finish work between the hours of 8 a.m. and 5 p.m.So, I do not have to get up early to catch the bus.EPAM also allows home-working when employees have dif

2022-09-06 18:33:38 155

原创 【Elasticsearch教程18】Mapping字段类型之text 以及term、match和analyzer

Elasticsearch的text字段类型,适合全文搜索,term和match有很大区别,analyzer分析器只能在text类型上,可以配置自定义的分词器

2022-09-06 16:32:45 1526

原创 【Elasticsearch教程17】Mapping字段类型之token_count

token_count一般integer类型,并且是作为text类型的子字段,它接收字符串后,分析出这个字符串在分词后都多少个token

2022-09-02 14:59:32 567

原创 英语邮件格式范文

在工作中,我们与老外经常用电子邮件交流,所以学会写英语邮件就很重要,我们不能把我们想说的内容简单用百度翻译后直接贴在邮件里发给对方。我们要按照场景,遵守相对固定的格式,使用礼貌的问候用语,体现出我们自己的职业素养,否则你和客户发邮件,上来就是Hi, Jack,这个就有点不正式了。

2022-09-02 14:21:27 2873

原创 【Elasticsearch教程16】Mapping字段类型之join以及has_parent has_child查询

一个parent可以有多个child一个child只能有一个parent如果我们用关系型数据库(如MySQL),我们还是挺熟悉如何设计表的。一个主表,一个子表,两个表可以用join、left join、right join做关联查询。nested,子属于父的某一个nested字段里,子属于父的一部分,父和子在同一文档里。join,子和父在同一index里,但不在同一文档里,父和子都是独立的文档。join类型父子文档必须在同一分片上nested类型,之前的博客Mapping字段类型之nested。

2022-09-01 18:34:41 1450

原创 【Elasticsearch教程15】Mapping字段类型之search_as_you_type

search_as_you_type会自动对词拆分。那这里要求“建行”能匹配到"建设银行",而"中油"不能匹配到"中国石油",我个人认为可以用到同义词这个功能,把"建行"设置为"建设银行"的同义词。比如没有设置"中渔"为"中水渔业"的同义词,那么就不会根据"中渔"搜索到"中水渔业"。而对于股票名称查询可以参考我之前的博客。上查询时,关键词的前后顺序是不会变的。的结果很多,表格放不下,可以通过下面语句查看。字段类型确实方便,可以先看官网文档。...

2022-08-31 17:47:51 689

原创 【Elasticsearch教程14】Mapping字段类型之range

range字段类型表示一个字段的值是一个数值范围例如一个range类型的字段的值是[10, 20],用12来匹配该字段,则会命中该文档.range类型说明[-231, 231-1 ]long_range[-263, 263-1]单精度、符合IEEE 754标准的浮点数的范围双精度、符合IEEE 754标准的浮点数的范围date_range日期范围, 在es内部,日期以64位long类型表示的毫秒数存储ip_rangeIP范围, 支持IPv4和IPv6的范围。...

2022-08-31 17:20:55 574

原创 【Elasticsearch教程13】Mapping字段类型之nested

在上一篇博客Mapping字段类型之object中,已经验证了用object类型存放对象数组是不可取的,因为object会把多个对象进行扁平化存储。nested类型能够存放对象数组,每一个对象会单独存储,所以可以在nested类型上进行查询、聚合和排序等操作。然而nested一个文档最多有50个nested类型的字段一个文档所有nested类型的字段存储文档最大数量是10000条。...

2022-08-31 15:12:30 1218

原创 【Elasticsearch教程12】Mapping字段类型之object

在一个字段存储一个JSON对象,可以选择object类型,在一个字段存储多个JSON对象,可以选择nested类型

2022-08-31 05:18:28 1697

原创 【Elasticsearch教程11】Mapping字段类型之日期时间date date_nanos

JSON没有date类型,但我们可以把以下类型作为日期时间存入ES。类型说明字符串日期格式的字符串,如"2015-01-01"或"2015/01/01 12:10:30"长整型从开始纪元(1970-01-01 00:00:00 UTC)开始的毫秒数整型从开始纪元(1970-01-01 00:00:00 UTC)开始的秒数上面的UTC(Universal Time Coordinated) 叫做世界统一时间,中国大陆和 UTC 的时差是 + 8 ,也就是 UTC+8。在ES内部,时间以。...

2022-08-30 18:02:00 4204 1

原创 【Elasticsearch教程10】Mapping字段类型之数字Numbers

ES的数据类型有很多种,为了`提高性能`和`减少存储空间`,选择一个足够用的类型就OK了,没必要选择过长的类型。比如各地人口数量,一般用integer存储足够了,没有必要使用long类型。

2022-08-30 16:56:32 917

原创 【Elasticsearch教程9】Mapping keyword的ignore_above

对于`keyword类型`, 可设置`ignore_above`限定字符长度。超过 `ignore_above` 的字符会被存储,但不会被倒排索引。比如`ignore_above=4`,”abc“,”abcd“,”abcde“都能存进ES,但是不能根据”abcde“检索到数据。......

2022-08-30 16:50:40 667

原创 【Elasticsearch教程8】Mapping字段类型之keyword

Elasticsearch keyword constant_keyword wildcard类型

2022-08-29 23:06:40 4632

原创 Talking about your current and work-related activities

I work as a java development engineer . Our team usually holds a knowledge sharing activity . Each of our team members will take turns to share with others about the software related technologies which he is good at or interested in . This month , I shared

2022-08-29 13:24:58 105

原创 【Elasticsearch教程7】Mapping字段类型之boolean

boolean类型非常简单,它就接受真或假

2022-08-26 16:56:17 697

原创 【Elasticsearch教程6】Mapping字段类型之二进制binary

其实在ES中,能用到binary的场景很少,如果这二进制的值大小比较大,存ES中,会对ES的查询性能有很多的影响。

2022-08-26 16:19:40 1289

原创 【Elasticsearch教程5】Mapping 动态模板 Dynamic templates

动态模板(Dynamic templates)可以满足我们需求,在创建mapping时,先定义好规则,当新字段满足某条规则时,就会按照该规则的预先配置来创建字段。

2022-08-26 14:31:38 879

原创 【Elasticsearch教程4】Mapping 动态映射

在实际企业开发中,都会提前设置好mapping的,不会完全让ES自动设置字段类型的。但是掌握好动态字段映射还是很重要的,是学习mapping的前提条件。在字段类型比较确定时,可以先设置好mapping,再插入数据,有新字段时,先给mapping添加新的字段设置在字段的个数和类型都不确定时,可以使用mapping的动态模板,按照已经指定的规则设置它的类型。比如某个字段名为int_age,就让类型为integer,字段名为就设为float。好好学习,天天向上,下一篇博客会写mapping的动态模板的内容。

2022-08-25 13:02:59 1646

原创 【Elasticsearch教程3】查询文档 term terms terms_set

term查询判断某个字段是否包含一个确定的值。一般都是用在keyword、int,long、ip、date等类型上

2022-08-23 17:49:30 817

原创 【Elasticsearch教程2】 更新文档 painless script案例

是Elasticsearch的默认脚本语言,它具有像 Groovy 那样的语法。把需要更新的字段放到doc里面,已有的字段会更新,新的字段会添加进文档。再次查询id=1的文档发现age的值改变了,并且添加了新的字段word。当act数组中不存在“圣剑裁决”时,才添加“圣剑裁决”当act数组中存在“圣剑裁决”时,才删除“圣剑裁决”当id=2的文档不存在时,会创建该文档。当文档不存在时,更新会报错,可以设置。下面就先写些更新文档的例子,用。对数值类型进行数学计算。根据查询条件,将文档的。

2022-08-23 11:51:08 879

原创 【Elasticsearch教程1】 创建文档

当使用Spring Data Elasticsearch时,可以使用。ES创建文档可以通过如下4种API,它们看着类似,功能上少许不同。:数据流的情况比较复杂,学习先以索引为主,熟练后再考虑数据流场景。用POST插入一个文档,不指定ID,会给文档自动生成ID。运行结果如下,可看出新创建的文档的ID是自生成的一串乱码。在用ES原生Java API创建文档时,可以设置。,说明当id已经存在时,会返回错误。表示创建一个新的文档,如果指定的。运行结果如下,可看出文档被覆盖了。来指定是Create文档的操作。

2022-08-22 14:21:09 1483

原创 Java设计模式单例 饿汉式 懒汉式

我在软件外包公司,现在甲方项目结束了,我们也没事做了。公司要给我们找新的客户项目,得面试才能进的新的项目组。听说新项目的面试官问的特别多特别细,唉,没想到入职一年了还得内部面试。刷新了一波Boss上的简历,不是中软、软通就是华为OD外包,不想去外包公司了。

2022-08-19 11:38:33 131

原创 大龄程序员4000场亚瑟王谈《成人如何学钢琴》

把手机游戏卸载了,虽然你可能没隔几天又安装回来。

2022-08-18 16:05:16 612 2

原创 前端笔记(11) Vue3 Router 编程式导航 router.push router.replace

在上篇博客Vue3 Router 监听路由参数变化中,我们使用创建 a 标签来定义导航链接:

2022-08-12 15:14:13 8038

原创 前端笔记(10) Vue3 Router 监听路由参数变化

Vue Router是开发Vue项目的必不可少的工具,也是极为重要的学习要点。本篇介绍下Vue Router的基础使用和如何监听路由参数变化。

2022-08-11 18:40:29 12162

原创 前端笔记(9) Vue3 async await 循环调接口使用案例

async和await是的语法,具体详细介绍可以看阮一峰的教程。这里我只是介绍在日常开发中,async和await的常见用法。

2022-08-10 18:45:15 6699

原创 前端笔记(8) Vue3+Vite 搭建项目 配置路径别名@

如果上面的npm run dev可以将项目运行,那么说项目创建没有问题,可以继续安装一些我们常用的依赖包了。在compilerOptions中添加下面的最后2项:“baseUrl"和"paths”在main.ts中引用一个组件,验证下是否会报错,并最后运行项目看能否正常启动。......

2022-08-10 14:41:16 3323

原创 前端笔记(7) Vue3 插槽slot的使用案例

在上一篇博客Vue3 dialog弹窗 父子组件之间传值及方法调用中已经介绍了如何给子组件传递参数,但是如何给子组件传递模板内容呢?这个就需要用到插槽slot了。首先最基础的一点:插槽是放在子组件上的,相当于子组件有一个坑,父组件可以传模板给子组件,来填这个坑。子组件接收参数,用props子组件接收模板,用slot。......

2022-08-08 18:44:12 624

原创 前端笔记(6) Vue3 dialog弹窗 父子组件之间传值及方法调用

实际开发中,都是用单文件组件,那组件之间传值和调用方法是最常见的功能。传参的方式有很多,比如props、emit、provide和inject。在学习组件之间传值之前,需要了解下模板ref。使用defineExpose()暴露方法,别的组件才能调用...

2022-08-04 18:22:01 10526 3

原创 前端笔记(5) Vue3 reactive ref 使用和区别

Vue3和Vue2的一个比较大的区别是Vue3提供了组合式API,它的说明和优点可以参考官方文档组合式 API FAQ。在实际项目中,一般都是用Vue的单文件组件开发,而在Vue3中通常就是组合式API+搭配来开发单文件组件。而我们之所以喜欢用Vue,主要是馋它的双向绑定,在Vue3中,声明响应式对象主要有reactive和ref这2种方式。.........

2022-08-04 10:33:32 448

原创 前端笔记(4) Vue3 全局属性 app.config.globalProperties 使用案例

学习Vue3有个把月了,记录下学习中的小知识点。首先很多同学还没找到Vue3真正的官方文档,下面给出Vue3的文档网站Vue3官网文档Vue3API文档。

2022-08-02 17:48:21 11330 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除