java
文章平均质量分 87
介绍Java基础知识及新特性
逆天至尊
这个作者很懒,什么都没留下…
展开
-
NIO Selector选择器解析
通过select系列方法,选择器会通过JNI,去进行底层操作系统的系统调用(比如select/epoll),可以不断地查询通道中所发生操作的就绪状态(或者IO事件),并且把这些发生了底层IO事件,转换成Java NIO中的IO事件,记录在的通道关联的SelectionKey的readyOps上。在事件处理过程中,对于新建立的socketChannel客户端传输通道,也要注册到同一个选择器上,这样就能使用同一个选择线程,不断地对所有的注册通道进行选择键的查询。并不是所有的通道,都是可以被选择器监控或选择的。原创 2022-09-02 12:53:14 · 1182 阅读 · 0 评论 -
Elasticsearch之排序解析(十二)
在默认情况下,ES对搜索结果是按照相关性降序排序的。有时需要按照某些字段的值进行升序或者降序排序。ES提供了sort子句可以对数据进行排序。使用sort子句一般是按照字段信息进行排序,不受相关性影响,而且打分步骤需要耗费一定的硬件资源和时间,因此默认情况下,不对文档进行打分。使用sort排序分为两种类别,一种是按照字段值的大小进行排序,另一种是按照给定地理坐标的距离远近进行排序。...原创 2022-08-10 21:30:00 · 4256 阅读 · 1 评论 -
Elasticsearch搜索匹配功能解析(十一)
针对不同的数据类型,ES提供了很多搜索匹配功能:在关系型数据库中,当需要查询所有文档的数据时,对应的SQL语句为select * form table_name。在ES中使用ES的match_all查询可以完成类似的功能。使用match_all查询文档时,ES不对文档进行打分计算,默认情况下给每个文档赋予1.0的得分。用户可以通过boost参数设定该分值。以下示例使用match_all查询所有文档,并设定所有文档的分值为2.0:结果返回:通过返回数据集可以看到,ES返回了所有的文档,并且所有文档原创 2022-08-09 21:00:00 · 3091 阅读 · 0 评论 -
Elasticsearch搜索辅助功能解析(十)
ES提供的各种搜索辅助功能。例如,为优化搜索性能,需要指定搜索结果返回一部分字段内容。为了更好地呈现结果,需要用到结果计数和分页功能;当遇到性能瓶颈时,需要剖析搜索各个环节的耗时;面对不符合预期的搜索结果时,需要分析各个文档的评分细节。...原创 2022-08-06 09:30:00 · 2550 阅读 · 0 评论 -
Elasticsearch之文档操作(九)
在Java高级REST客户端中,执行根据条件更新文档,需要创建UpdateByQueryRequest对象并设置对应的索引名称,类似于DSL中的query子句,通过调用UpdateByQuery Request.setQuery()方法设置查询逻辑,script子句通过调用UpdateByQueryRequest.setScript()方法设置更新逻辑,然后执行客户端的updateByQuery()方法并把UpdateByQueryRequest对象传入即可。下面的代码演示了向索引中添加单条文档的方法。..原创 2022-08-05 09:30:00 · 1505 阅读 · 0 评论 -
Elasticsearch映射操作(八)
在使用数据之前,需要构建数据的组织结构。这种组织结构在关系型数据库中叫作表结构,在ES中叫作映射。作为无模式搜索引擎,ES可以在数据写入时猜测数据类型,从而自动创建映射。但有时ES创建的映射中的数据类型和目标类型可能不一致。当需要严格控制数据类型时,还是需要用户手动创建映射。...原创 2022-08-04 09:30:00 · 4543 阅读 · 1 评论 -
Spring Data Elasticsearch介绍(七)
SpringDataElasticsearch是SpringBoot套件中的一个组件,在SpringBoot中连接ES可以使用SpringDataElasticsearch。SpringDataElasticsearch是SpringData项目的一部分,该项目致力于提供一致的基于Spring的数据查询和存储编程模型。SpringDataElasticsearch封装了创建客户端的逻辑并与服务端保持长连接,让我们不必关注于网络连接问题。...原创 2022-08-03 09:30:00 · 1269 阅读 · 0 评论 -
Java8之函数式接口
Consumer 接口是消费性接口,无返回值。Java8 中对 Consumer 的定义如下所示。使用示例Supplier接口Supplier 接口是供给型接口,有返回值,Java8 中对 Supplier 接口的定义如下所示。使用示例Function接口Function 接口是函数型接口,有返回值,Java8 中对 Function 接口的定义如下所示。使用示例Predicate接口Predicate 接口是断言型接口,返回值类型为 boolean,Java8 中原创 2022-07-08 09:30:00 · 482 阅读 · 0 评论 -
Java8之Lambda表达式
在介绍如何使用 Lambda 表达式之前,我们先来看看匿名内部类,例如,我们使用匿名内部类比较两个 Integer 类型数据的大小在上述代码中,我们使用匿名内部类实现了比较两个 Integer 类型数据的大小。接下来,我们就可以将上述匿名内部类的实例作为参数,传递到其他方法中了,如下所示。TreeSet treeSet = new TreeSet(com);完整的代码如下所示:我们分析下上述代码,在整个匿名内部类中,实际上真正有用的就是下面一行代码。Lambda..原创 2022-07-08 09:30:00 · 280 阅读 · 0 评论