App
-
一网打尽 @ExceptionHandler、HandlerExceptionResolver、@controlleradvice 三兄弟!
把 @ExceptionHandler、HandlerExceptionResolver、@controlleradvice 三兄弟放在一起来写更有比较性。这三个东西都是用来处理异…
-
从电商系统来学习 Spring 中的事件机制 ApplicationEventPublisher
事件机制在一些大型项目中被经常使用,于是 Spring 专门提供了一套事件机制的接口,方面我们运用。本文来说说 ApplicationEventPublisher 的使用。 在设计…
-
详解 @RequestMapping 中的 consumes 和 produces
@RequestMapping 注解非常的强大,Spring MVC 和 SpringBoot 中都会用到这个注解。要学会 @RequestMapping 的用法,就需要从它的原理…
-
Redis 中ZREVRANGEBYSCORE(zrangeByScoreWithScores) 使用不当导致的分页 Bug!
最近我们的电商系统中在大促时出现了一个分页 Bug,问题产生的原因就是 Redis 的 ZREVRANGEBYSCORE 指令使用不当导致的。表现在 java 代码中就是…
-
Lucene 实战教程第十二章详解 Lucene 的高级搜索技术
Lucene 中的 IndexSearcher 提供了一整套完整的搜索体系,这套查询体系是建立在 SpanQuery 类的基础上。SpanQuery 类大致的反映了 Lucene …
-
Lucene 实战教程第十章使用 PerFieldAnalyzerWrapper 为不同字段指定不同分词器
从教程的第一篇到现在,大家可能会发现一个问题。那就是所有的 Document 文档或者 Field 字段都使用的是同一个分词器。那么有没有办法让不同的 Field 使用不同的分词器…
-
Lucene 实战教程第八章说说 TokenStream 和 TokenFilter
当你深入骨髓的去了解一项技术,你才能获得快感!上一章,我们说过 Analyzer 分词器的主要是用来构建 TokenStreams,那么我们今天就一起通过本文来看看 Analyze…
-
Lucene 实战教程第三章创建索引 IndexWriter
我在前面介绍过,所有的搜索技术大部分都是靠索引来实现,所以索引很重要。于是我就把索引这一块单独的抽取出来作为一章来写。 通过上面这张流程图,我们也可以看出索引对于 Lucene 的…
-
详解 org.apache.lucene.analysis.Analyzer 使用教程
Analyzer 单词的意思就是分析,它是一个抽象类,在 Lucene 的 org.apache.lucene.analysis 包中。lucene-analyzers-commo…
-
说说 org.apache.lucene.search.SearcherManager 的简单用法
我们的电商项目中用到了搜索,搜索功能是基于 lucene 开发的。最近有同事给我说,我们的搜索有问题。我吓了一跳,赶紧问什么问题? 他说,搜索商品后,点击第二页,第三页等出来的内容…