- 博客(257)
- 资源 (17)
- 收藏
- 关注
原创 ElasticSearch - Metadata fields 元数据字段
一、关于 每个文档都有与之关联的元数据,例如_index,映射 _type和_id元数据字段 参考:https://www.elastic.co/guide/en/elasticsearch/reference/7.10/mapping-fields.html二、示例{ "_index": "goods", "_type": "_doc", "_id": "1182628", "_version": 3, "_seq_no": 755,...
2022-02-15 14:35:17
556
原创 ElasticSearch - Mapping parameters 映射参数
一、关于 以下 映射参数 对于某些或所有 字段类型 是通用的 参考:https://www.elastic.co/guide/en/elasticsearch/reference/7.10/mapping-params.html二、详细 index 控制是否对字段值建立索引。接受 true 或 false 值,默认 true 值;未索引的字段不能通过检索查询到数据 store 标记字段是否需要被 额外的 单独的 存储在和 index 不同的 frag...
2022-02-15 14:35:10
381
原创 ElasticSearch - Field Type 字段类型
一、参考地址 https://www.elastic.co/guide/en/elasticsearch/reference/7.10/mapping-types.html二、常用类型 Text 文本类型,存储字符串的类型,全文检索的字段类型;字符串将被分析器分析(分词);用于全文检索;不用于排序,也很少用于聚合 Keywords 关键字类型,存储字符串的类型,单词匹配的字段类型;字符串将按原样保留而被存储;用于过滤和排序和汇总;避免用于全文...
2022-02-15 14:35:03
1099
原创 ElasticSearch - Analyzer 文本分析器
一、关于 1、概念相关 文本分析是将非结构化文本转换为结构化格式,以便于搜索的过程 文本分析器使 ElasticSearch 能够执行全文检索,返回所有相关的结果,而不仅仅是精确的匹配 2、组成部分 文本分析器由 字符过滤器、分词器、词项过滤器 三个构建块组成 字符过滤器(character filters) 接收原始文本,并对文本进行过滤处理,如处理文本中的html标签字符或将罗马数字转换成阿...
2022-02-15 14:33:42
613
原创 ElasticSearch - Aggregations 聚合分析
一、关于 1、说明 在 ElasticSearch 中,基于索引和检索的基础上,提供了聚合(Aggregations)的功能,对存储的数据进行统计和分析 在 ElasticSearch 中,将聚合分为 指标聚合(Metric)、存储桶聚合(Bucket)、管道聚合(Pipeline)三类 参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html...
2022-02-15 14:33:02
1134
原创 ElasticSearch - Query DSL 查询语言
一、关于1、QueryDSL 介绍Elasticsearch 提供了一个完整的基于 JSON 的查询 DSL(Domain Specific Language)来定义查询一个查询语句可由 叶子查询子句(Leaf query clauses)和 复合查询子句(Compound query clauses)两部分字句构成叶子查询字句在指定的字段上查询指定的值, 如:match、term、range等,字句可以单独使用复合查询字句包装其他叶子查询或复合查询为一个查询,并用于以逻辑方式组
2022-02-15 14:32:21
741
原创 Elasticsearch - 集群、索引、文档的基础操作
一、集群健康状态GET /_cat/health?v集群节点GET /_cat/nodes?v二、索引列表索引GET /_cat/indices?v存在判断HEAD /goods创建索引PUT /goods{ "settings": { "number_of_shards": "2", # 分片数 "number_of_replicas": "2" # 副本数 }}查看索引GET /goods修改设置...
2022-02-15 14:27:37
142
原创 Spring - @Value 赋值的几种方式
一、从配置文件获取值 1、获取配置值获取配置值,配置不存在时抛异常@Value("${jdbc.name}")private String name 2、获取配置值,配置不存在时使用指定的默认值获取配置值,不存在时赋值为空串@Value("${jdbc.name:}")private String name获取配置值,不存在时赋值为指定字符串;字符串无需加引号包裹@Value("${jdbc.name:root}")private String n...
2021-10-23 14:34:32
1923
原创 Spring - 不扫描指定的某一些包
一、Spring@ComponentScan(basePackages = {"com.xl","com.ws"}, excludeFilters = {@ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.xl.common.*")})二、Spring Boot 从常规@SpringBootApplication(scanBasePackages = {"com.xl", "com.ws"}) ...
2021-10-23 14:31:30
2619
原创 J2SE - java命令运行class文件提示 “错误:找不到或无法加载主类“
一、默认加载路径问题java指令默认通过CLASSPATH环境变量中指定的目录寻找在CLASSPATH环境变量中加入“.;”即可。“.”的意思是搜索当前目录%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;.;二、包名和路径问题注意类中的包名和文件存放的路径要一致D:\work\TstProject\src>javac com/xl/StringUtils.java注意执行命令的起始路径和运行class的包名D:\w.
2021-10-23 14:31:04
299
原创 J2SE - 提取 Url 上的参数
方式一:import org.springframework.util.MultiValueMap;import org.springframework.web.util.UriComponentsBuilder;import java.util.List;public class UrlTst { /** * 引用 spring-web 包的类;支持重复参数 */ public static void main(String[] args) {
2021-10-23 14:27:14
148
原创 J2SE - POI:java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell
一、原因 获取数据的方法,和数据的实际类型不一致二、方案Cell cell = row.getCell(0);//获取数据之前,设置单元格的类型cell.setCellType(CellType.STRING);String value = cell.getStringCellValue();...
2020-10-14 10:22:05
657
原创 J2SE - POI往Excel中插入图片
一、示例package com.xl.poi;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import javax.imageio.ImageIO;import org.apache.poi.hssf.usermodel.HSSFClientA...
2020-10-14 10:21:53
500
原创 J2SE - POI设置单元格的宽度和高度
一、接口 1、指定设置 /** * 设置指定单元格的宽度;单元格的宽度 即 列的宽度;方法来自 Sheet 接口 * @param columnIndex 列的索引;值从 0 开始 * @param width 宽度值;单位是 1/256 个字符宽度,即值建议设置为256的倍数 */ public void setColumnWidth(int columnInd...
2020-10-14 10:21:31
9161
原创 J2SE - POI设置单元格样式
一、设置字体 // 设置字体属性 Font font = workbook.createFont(); // 创建字体对象 font.setItalic(true); // 设置字体倾斜 font.setColor(Font.COLOR_RED); // 设置字体颜色 ...
2020-10-14 10:21:22
1590
2
原创 J2SE - POI合并单元格相关
一、实现说明 实现方式:通过 CellRangeAddress 指定一个地址范围来实现多个单元格的合并 构造参数:开始行,结束行,开始列,结束列 参数说明:都是从 0 开始,且包括参数的当前行或列二、注意事项 无论 Row 或 Cell 是否已经创建,都可以执行单元格的合并操作;但取值和赋值时单元格必须已经存在 合并前多个单元格的内容, 最后只...
2020-10-14 10:21:10
708
原创 J2SE - Jxls 2.x 模版导出 Excel 示例
一、说明 Jxls 2.x 和 1.x 有很大的差异: 表达式从类似JSTL的模式,改为了直接在单元格中插入批注的方式来声明 新增了区域的概念,用来定义整个模板中所需要解析的表达式的所在范围,且只能声明在A1单元格内二、依赖 <!-- Jxls的基础库 --> <dependency> <groupId&...
2020-10-14 10:20:40
876
原创 J2SE - Jxls 1.x 模版导出 Excel 示例
一、说明 Jxls 是基于 Poi 导出 Excel 的模板式封装,在 1.x 版本中采用了类似 JSTL 标签的方式获取数据二、示例 1、模版 2、代码// 获取核心数据 List<Goods> goodsList = goodsService.queryGoodsList(); // 组装模版数据 Map<S...
2020-10-14 10:20:29
236
原创 MySQL - Error 1055:sql_mode=only_full_group_by
一、异常 Error 1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column XXX which is not functionally dependent on columns in GROUP BY clause; this is ...
2020-10-14 10:19:29
387
原创 MySQL - 多表 INNER JOIN 查询
一、单表查询SELECT tab01.col01, tab01.col11 FROM Table_01 tab01 ORDER BY tab01.col01二、两表查询SELECT tab01.col01, tab01.col11, tab02.c22 FROM Table_01 tab01 INNER JOIN Table_0...
2020-10-14 10:18:34
1849
1
原创 MySQL - 使用不等于条件时会将值为NULL的数据也过滤的问题
示例SELECT * FROM tbl_user WHERE user_code != 'A0001 '期望结果是用户编码不等于 A0001 的所有用户,实际结果为用户编码不等于 A0001 且不为 NULL 的所有用户方案SELECT * FROM tbl_user WHERE IFNULL(user_code,'') != 'A0001' 此时获取的结果才与...
2020-10-14 10:18:21
2004
1
原创 J2SE - Logback日志Pattern配置说明
一、转换符用于定义输出的内容转换符 说明 c{length} lo{length} logger{length} 输出源记录事件的 logger 名 参数length指定缩短 logger 名的规则,类名永远不省略;为0表示只显示类名,非0包名段最小一个字符 d{pattern} date{pattern} 输出记录事件的日期 语法与...
2020-01-10 14:17:52
476
原创 J2SE - Log4j日志Pattern配置说明
一、日志格式log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %5p [%15.15t] %36.36c:%-4.4L - %m%n %d{yyyy-MM-dd HH:mm:ss.SSS} :指定日期的格式 %5p :指定日志级别最小宽度为5且右对齐(不足时左补空)...
2020-01-10 14:17:24
1170
原创 MySQL - 在 Left Join 中使用 On 和 Where 的区别
left join:返回左表中的所有记录以及右表中连接字段与左表相等的记录,会生成一张临时表on:是对右表进行过滤的条件,左表将返回所有的行,即只作用于右表where:是对连接后生成的临时表进行过滤的条件,即只作用于连接后的表过程:以左表的所有的行为基准,先与右表在 on 条件过滤后的结果集做连接,然后再在连接而成的临时表上进行 where 条件的过滤右表,如果是要筛选后才连接,应...
2020-01-10 14:16:09
510
原创 MySQL - 关于 Order By 乱序问题
一、问题 在 Order By 的查询语句中,如果 Order By 的字段存在较多相同数据时,可能会出现乱序的问题,即多次查询的返回结果顺序不一致二、方案 添加第二个 Order By 的字段,且该字段尽量唯一三、示例-- 原始语句SELECT * FROM detail ORDER BY type ASC-- 调整语句SELECT * FROM de...
2020-01-10 14:16:05
1635
原创 MyBatis - 单参数的传递方式
本章只对 Dao 接口声明中,入参为单个参数 且 类型为基础类型(Integer、Long、String 等)做说明,对于复杂类型( Bean、Map 等)和多参数类型 统一到多参数章节说明 在 Mapper 的 XML 文件中,入参声明的 parameterType 属性,是可选的参数,可以不指定 内置参数 _parameter 代表的是 Dao 接口中声明的所有参数...
2020-01-10 14:16:01
1457
原创 MyBatis - 多参数的传递方式
此章对 Dao 接口中 多个基础类型参数、或单参数但为 Bean / Map 等复杂类型、或者多个复杂类型参数 的情况_parameter 当 Dao 接口中定义的是一个复杂类型参数时,此时内置参数_parameter 代表的是当前参数对应的复杂类型对象 当 Dao 接口中定义的是多个参数时,多个参数会被封装为一个 map 类型,此时内置参数_parameter ...
2020-01-10 14:15:56
298
原创 MyBatis - 使用foreach迭代List/Array的说明
在 MyBatis 中的 foreach 元素,主要用于迭代 集合数据 以动态生成执行语句;主要有 item、index、collection、open、separator、close 等属性属性说明 collection:要迭代的数据集对象,必填项 item:迭代出的元素的别名,必填项 index:元素的序号(map时为k...
2020-01-10 14:15:52
1837
原创 Mybatis - 在If标签中非空判断数字0时不正确的问题
一、问题 1、通常在对一个字段做非空判断时采取的方式如下,执行结果是符合预期的<if test="name != null and name != ''"> AND name = #{name}</if> 2、但是当这个字段的类型为数字且值为0时,会发现语句没有连接,判断失败<if test="status != null ...
2020-01-10 14:15:34
1538
1
原创 Spring - 配置文件中的特殊字符
一、说明 XML中共有5个特殊的字符,分别是:&<>“’。如果配置文件中的注入值包括这些特殊字符,就需要进行特别处理二、处理 1、使用<![CDATA[ ]]>标签封装包含特殊字符的字符串 <property name="uri"> <value><![CDATA[/...
2019-11-08 11:17:12
8833
原创 MySQL - 关于 False、True、0、1、tinyint(1) 的说明
MySQL 保存 Boolean 值时,用 1 代表 TRUE,0 代表 FALSE;类似一个 bit 位,默认没有数据,即为 0,也即 Faslse MySQL 存储 Boolean 值的类型为 tinyint(1) 类型;MySQL 中有 true、false、TRUE、FALSE 四个常量,代表1、0、1、0mysql> select true,false,TR...
2019-11-08 11:14:51
10831
原创 MySQL - 排名实现
一、实现步骤1、实现自然排名SELECT id, name, score, -- 排名变量每次+1,实现自然排名 @curr_row_rank := @curr_row_rank + 1 AS rank FROM scores, (SELECT -- 定义一个变量,每条记录+1,用于标识自然的排名 @cur...
2019-11-08 11:14:25
592
1
原创 MyBatis - 在Xml的SQL语句中添加注释
<!-- SQL外的注释:使用XML的标准注释 --> <select id="selectUser" resultType="com.xl.entity.UserEntity"> SELECT /* SQL中的注释:采用SQL多行注释 */ id, name, status FROM users ORDER BY id ...
2019-11-08 11:13:50
5183
2
原创 MyBatis - 在Xml中实现模糊查询
一、文本替换模式(有SQL注入风险)<if test="title != null and title != ''"> AND title like '%${title}%'</if>二、使用 Bind 标签<if test="title != null and title != ''"> <bind name="titleLike...
2019-11-08 11:13:20
1680
原创 Git - 在Eclipse中将项目上传到Git中
1、登录GitLab 中,然后创建一个项目2、在Eclipse中,项目右键 --> Team --> Share Project3、弹出对话框 --> 选择Git --> Next4、弹出对话框 --> 勾选 User or Create repository in parent folder of project5、对话框布局刷新 -->...
2019-11-08 11:12:06
921
原创 Git - 在Eclipse中切换项目的Git地址
一、关于 项目迁移到了新的GitLab服务器后,在Eclipse中如何将一个已经存在的项目切换Git提交的地址二、修改 1、项目右键 -->Team --> Remote -->Configure Push to Upstream… 2、点击 --> Change --> 填写新Git信息 -->Finish -->...
2019-11-08 11:09:54
1805
原创 微信公众平台 - 授权接口说明
一、基础接口access_token 凭据 access_token 是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用 access_token 作为认证要素 获取到的 access_token 有效期为2个小时,且获取接口的调用次数有限制,需要存储复用并定时刷新,公众平台会保证在刷新的5分钟内新老 access_token 都可用实现业务的平滑过渡 公众号...
2019-11-08 11:09:39
2992
原创 J2SE - String、InputStream、OutputStream 互转
一、String 转 InputStream InputStream is = new ByteArrayInputStream(str.getBytes()); InputStream is = IOUtils.toInputStream(str,Charset.forName("utf-8"));二、InputStream 转 String StringBuilder s...
2019-11-08 11:09:13
554
原创 JNDI - 基于Tomcat的配置和应用
一、关于 JNDI(Java Naming and Directory Interface,Java命名和目录接口),J2EE的标准之一,J2EE容器都必须要提供的一个服务 JNDI的出现,让数据库连接代码交给容器管理,比如Tomcat、JBOSS等容器,使开发者不用关心数据库的配置和驱动等是什么二、配置 1、配置参数的说明<Resource |- ...
2019-11-08 11:08:54
362
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人