自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 递归输出json所有key和value

【代码】递归输出json所有key和value。

2023-05-02 22:31:00 367 1

原创 版本内容以及选择

版本选择

2022-06-03 18:46:07 421

原创 Lucene使用注意事项

关键词区分大小写 OR AND TO等关键词是区分大小写的,lucene只认大写的,小写的当做普通单词。读写互斥性 同一时刻只能有一个对索引的写操作,在写的同时可以进行搜索文件锁 在写索引的过程中强行退出将在tmp目录留下一个lock文件,使以后的写操作无法进行,可以将其手工删除时间格式 lucene只支持一种时间格式yyMMddHHmmss,所以你传一个yy-MM-dd HH:mm:ss的时间给lucene它是不会当作时间来处理的设置boost 有些时候在搜索时某个字段的权重需要大一些,例如你.

2022-05-29 13:39:58 365

原创 Lucene相关度排序

什么是相关度排序Lucene对查询关键字和索引文档的相关度进行打分,得分高的就排在前边。如何打分Lucene是在用户进行检索时实时根据搜索的关键字计算出来的,分两步:计算出词(Term)的权重根据词的权重值,计算文档相关度得分。明确索引的最小单位是一个Term(索引词典中的一个词),搜索也是要从Term中搜索,再根据Term找到文档,Term对文档的重要性称为权重,影响Term权重有两个因素:2.1 Term Frequency (tf): 指此Term在此文档中出现了多少次。tf 越大说明

2022-05-29 13:37:01 517

原创 Lucene优化

解决大量磁盘IOconfig.setMaxBufferedDocs(100000); 控制写入一个新的segment前内存中保存的document的数目,设置较大的数目可以加快建索引速度。数值越大索引速度越快, 但是会消耗更多的内存indexWriter.forceMerge(文档数量); 设置N个文档合并为一个段数值越大索引速度越快, 搜索速度越慢; 值越小索引速度越慢, 搜索速度越快更高的值意味着索引期间更低的段合并开销,但同时也意味着更慢的搜索速度,因为此时的索引通常会包含更多的段。如

2022-05-29 13:31:43 430

原创 Lucene嵌套查询

Lucene5之前要实现 (a or b) and cBooleanQuery bquery1 = new BooleanQuery();TermQuery tQuery1 = new TermQuery(new Term("xxx", "a"));TermQuery tQuery2 = new TermQuery(new Term("xxx", "b"));TermQuery tQuery3 = new TermQuery(new Term("xxx", "c"));bquery1.add(

2022-05-28 22:44:33 457

原创 Lucene获取分词的内容

FSDirectory directory = FSDirectory.open(new File("xxx")); IndexReader indexReader = DirectoryReader.open(directory); String[] fields = {"xxx"}; for (int i = 0; i < fields.length; i++) { Terms ter = MultiFields.getTerms(indexReader, fields[i]);

2022-05-28 22:27:41 312

原创 Lucene查询语法

TermQuery 是最常用的查询对象,也是 Lucene 可以使用的许多复杂查询的基础。它用于根据区分大小写的密钥检索文档Query query = new TermQuery(new Term("title","java"));MatchAllDocsQuery匹配所有文档//查询所有文档Query query = new MatchAllDocsQuery();// 相当于查询语法 : *:*TermRangeQuery是用于字符串范围查询的,既然涉及到范围必然需要字符串比.

2022-05-28 22:21:17 1823

原创 Lucene索引库维护

添加索引调用 indexWriter.addDocument(doc)添加索引。修改索引更新索引是先删除再添加,建议对更新需求采用此方法并且要保证对已存在的索引执行更新,可以先查询出来,确定更新记录存在执行更新操作。如果更新索引的目标文档对象不存在,则执行添加。@Test public void testIndexUpdate() throws Exception { // 创建分词器 Analyzer analyzer = new StandardAna

2022-05-28 20:41:32 347

原创 Lucene的Field域类型

Field属性Field是文档中的域,包括Field名和Field值两部分,一个文档可以包括多个Field,Document只是Field的一个承载体,Field值即为要索引的内容,也是要搜索的内容。是否分词(tokenized)是:作分词处理,即将Field值进行分词,分词的目的是为了索引。比如:商品名称、商品描述等,这些内容用户要输入关键字搜索,由于搜索的内容格式大、内容多需要分词后将语汇单元建立索引否:不作分词处理比如:商品id、订单号、身份证号等是否索引(indexed)是:进

2022-05-28 19:43:10 581

原创 Lucene搜索过程测试

@Test void testIndexSearch() throws ParseException, IOException { //1.创建分词器(对搜索的关键词进行分词使用) //注意:分词器要和创建索引的适合使用的分词器相同 Analyzer analyzer = new StandardAnalyzer(); //2.创建查询对象,第一个参数:默认查询域,如果查询的关键字中带搜索的域名,则从指定域中查询,如果不带域名则从,默认

2022-05-28 17:04:41 399

原创 Lucene创建索引

引入相关jar包 <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.12.1</version> </dependency> <dependency>

2022-05-28 16:27:58 703

原创 关于支付宝H5支付回调验签失败的原因

支付宝H5支付回调异步验签失败原因

2022-05-23 15:41:08 1002

原创 PageHelper使用过程中syntax error, error in :‘it 1 LIMIT ? ‘

问题原因:PageHelper 方法使用了静态的 ThreadLocal 参数,分页参数和线程是绑定的。只要我们保证在 PageHelper 方法调用后紧跟 MyBatis 查询方法,这就是安全的。因为 PageHelper 在 finally 代码段中自动清除了 ThreadLocal 存储的对象。线程中start的page 不能保证线程在当前执行退出时清理完page变量。一次PageHelper的分页过程如下:一、设置 page 参数二、执行 query 方法三、Interceptor 接

2022-05-23 15:24:25 436

原创 Lucene搜索理论

搜索理论基础数据查询方法1.顺序扫描法算法描述:所谓排序扫描,例如要找内容包含一个字符串的文件,就是一个文档一个文档的看,对于每一个文档,从头看到尾,如果此文档包含此字符串,则此文档为我们要找的文件,接着看下一个文件,直到扫描完所有的文件。优点:查询准确率高缺点:查询速度会随着查询数据量的增大,越来越慢使用场景:数据库中的like关键字模糊查询文本编辑器的Ctrl + F查询功能2.倒排索引先举一个例子:例如我们使用新华字典查询汉字,新华字典有偏旁部首的目录(索

2022-05-22 20:01:37 597

原创 Java数组

Java数组01:什么是数组Java数组02:数组的声明和创建Java数组03:三种初始化及内存分析Java数组04:下标越界及小结Java数组05:数组的使用Java数组06:二维数组Java数组07:Arrays类讲解Java数组08:冒泡排序Java数组09:稀疏数组...

2022-05-05 23:39:17 297

原创 Nginx 405 not allowed

Nginx 405 not allowed

2022-04-26 11:35:36 13813 1

原创 Java方法

Java方法01:什么是方法?Java方法02:方法的定义和调用Java方法03:方法的重载Java方法04:命令行传递参数Java方法05:可变参数Java方法06:递归讲解

2022-04-24 21:41:05 268

原创 工作踩坑篇

使用tomcat部署vue项目第一次访问请求正常,刷新页面报404错误解决方法:如果 URL 匹配不到任何静态资源,则应该返回同一个 app 依赖的index.html 页面。在ROOT根目录下创建WEB-INF文件夹,在WEB-INF中写一个web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w

2022-04-20 21:58:07 398

原创 java获取请求的url地址

java获取请求的url地址1.获取全路径http://xxxxx:xxxx/demo/loginController/loginrequest.getRequestURL();2.获取协议名和域名2.1 获取协议名,例如:http;获取方法:request.getScheme();2.2 获取域名 localhost;获取方法: request.getServerName();3.获取请求所有参数 map类型request.getParameterMap()4.获取/demo项目名req

2021-11-12 16:10:25 5264

原创 关于在读取Excle文件的时候报错:Cell index must be >= 0解决方法

关于在读取Excle文件的时候报错:Cell index must be >= 0

2019-10-20 22:06:18 17978 1

原创 本地或者服务器同时启动2个或多个tomcat

1.## window10环境下jdk的安装与配置(1)从官网下载jdk,地址:jdk1.8.0_101,官网链接地址https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html如下图:(2)具体安装步骤打开后一直点击下一步安装完成即可,我安装的目录是c盘,安装过程略。(3)下面主...

2019-10-10 22:41:18 799

原创 mysql 8.0.12 解压版安装

1.mysql下载地址: http://dev.mysql.com/downloads/mysql/ 2.将下载下来的mysql的压缩包解压到创建的目录下,打开文件查看是否存在my-default.ini,如果存在就把my-default.ini修改一下或者自己建一个my.ini文件 [mysqld]设置3306端口port=3306设置mysql的安装目录bas...

2018-09-05 17:04:53 317

windows管理员授权.reg

windows管理员授权.reg,可以直接下载后,将文件放在桌面或者是其他盘,然后把需要授权的文件,拖拽至这个下载的windows管理员授权.reg,最后就完成管理员授权。

2019-12-18

空空如也

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

TA关注的人

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