自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一线大码

业精于勤,荒于嬉;行成于思,毁于随。

  • 博客(245)
  • 资源 (2)
  • 收藏
  • 关注

原创 最新版 Elasticsearch Java API 客户端文档

Elasticsearch Java API 客户端文档手动翻译,当前最新版,8.3 & 8.4 版本。

2022-08-31 18:28:20 714 1

原创 java.sql.SQLException: Value ‘xxx‘ can not be represented as java.sql.Timestamp

最近做项目查询数据库操作的时候,有一个表的查询操作一直报错,Java 使用 JDBC 连接 MySQL 数据库,在操作值为。赋值的操作有关,如果能够在设计阶段和记录写入阶段做好逻辑判断,避免写入。因此对于这类异常,可以考虑通过修改连接串,附加。从另一个层面讲,这类异常的触发也与。出现问题的数据和数据表结构。这类值,那么也可以避免出现。...

2022-08-12 17:57:43 997

原创 Java8 中新增的 Stream 流操作

因为Stream主要用于对集合数据的处理场景,所以除了上面几种获取简单结果的终止方法之外,更多的场景是获取一个集合类的结果对象,比如List、Set或者HashMap等。并行流类似于多线程在并行处理,所以与多线程场景相关的一些问题同样会存在,比如死锁等问题,所以在并行流终止执行的函数逻辑,必须要保证线程安全。顾名思义,通过终止管道操作之后,Stream流将会结束,最后可能会执行某些逻辑处理,或者是按照要求返回某些执行后的结果数据。...

2022-07-21 23:16:34 850

原创 Java 设计模式之工厂方法模式

工厂方法模式(Factory Method Pattern)定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类。抽象产品类负责定义产品的共性,实现对事物最抽象的定义,为抽象工厂类,具体如何创建产品类是由具体工厂类完成的。1.2. 具体产品类1.3. 抽象工厂类1.4. 具体工厂类1.5. 使用示例2. 简单工厂模式该模式是工厂方法模式的弱化,因为简单,所以称为简单工厂模式(Simple Factory Pattern),也叫做静态工厂模式。缺点是工厂类的扩展比较困难,不符合开闭

2022-06-09 00:12:36 392 1

原创 Maven 项目集成 Elasticsearch 和 Redis

文章目录1. 集成 Elasticsearch1.1. 依赖1.2. 配置1.2.1. 配置文件1.2.2. 配置类1.3. 使用2. 集成 Redis2.1. 依赖2.2. 配置2.2.1. 配置文件2.2.1.1. 单机配置2.2.1.2. 哨兵配置2.2.2. 配置类2.3. 使用这是一个普通 Maven 项目,不是 Spring 或 SpringBoot 项目。下面都用到了这个工具类:package com.gtcom.search.util;import com.gtcom.searc

2022-05-04 17:26:54 1955

原创 Linux 系统删除文件名乱码的文件

当文件名为乱码的时候,无法通过键盘输入文件名,这时我们可以直接用鼠标复制文件名,然后使用rm命令进行删除:rm 234x*7^*一般这样就可以删除了,但有的乱码文件名这样复制也是删除不了的,会提示文件不存在,这时我们可以使用下面的方法。我们知道每个文件都有一个 i 节点号,我们可以考虑通过 i 节点号来管理文件。首先,我们要取得文件的 i 节点号。这个可以通过ls -i命令获得,也可以通过ll -i命令获得。此时在文件前面会出现一个数字,这个数字是文件的节点号。接着,执行命令:find -in

2022-02-19 17:36:36 3988

原创 全文查询分类

文章目录官方文档地址:

2022-02-11 14:41:26 857

原创 SpringBoot 使用 Nacos 作为注册中心

文章目录环境介绍配置过程3. 网关配置最近开发了一个 SpringBoot 项目,需要将其发布为一个微服务,注册到 Nacos,参考 Nacos 官网文档的说明没有搞定,各种问题,最后还是使用了 SpringCloud 的依赖才成功的,下面介绍下 SpringBoot 注册到 Nacos 的过程。如果想要不使用 SpringCloud 依赖直接将 SpringBoot 项目注册到 Nacos,可以参考这篇文章:SpringBoot使用Nacos进行服务注册发现与配置管理环境介绍当前使用的 Nac

2022-02-11 12:39:45 3127

原创 Maven 多模块项目编译报错 The POM for xxx is invalid

参考地址:Maven传递依赖无法引入问题(The POM for xxx is invalid)编译警告信息:[WARNING] The POM for com.gtcom:output-common:jar:1.0.0-SNAPSHOT is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details解决方法:如果没有远程仓库,在父项目上选择insta

2022-01-25 10:51:49 6966 2

原创 SpringBoot 项目添加元数据配置

文章目录1. 自定义配置警告2. 生成元数据配置3. 配置注解处理器1. 自定义配置警告有时候我们需要在配置文件中添加一些我们自定义的内容,比如下面图片中的data.analysis.kafka.address。这时会显示黄色的警告信息,鼠标放到黄色警告上,会提示无法解析该配置属性。如果不管这个警告,也没事,项目也可以正常跑起来,该属性也能正常读取到,但是强迫症就是受不了这种警告,所以需要消除它。2. 生成元数据配置点击上图中的定义配置键'xxx',会自动发生成下图的元数据文件:打开该文件

2022-01-25 10:43:03 3866

原创 MyBatis-Plus 逻辑删除不能自动填充的处理方法

官方文档关于逻辑删除的描述Gitee官方示例代码mybatis-plus 逻辑删除无法做自动填充的问题mybatisplus 结果_Mybatis Plus学习笔记(逻辑删除/动态填充/常用插件)我是用的 MyBatis 版本为 2.2.1,MyBatis-Plus 版本为 3.5.0。下面直接上代码。package com.gtcom.backstage.injector;import com.baomidou.mybatisplus.core.injector.AbstractMetho

2022-01-18 15:15:49 1358

原创 11.5 JSON 数据类型

文章目录部分更新 JSON 值创建 JSON 值官方文档地址:11.5 The JSON Data TypeMySQL 支持由 RFC 7159 定义的原生 JSON 数据类型,可以有效地访问 JSON(JavaScript 对象符号)文档中的数据。与将 JSON 格式的字符串存储在字符串列中相比,JSON 数据类型有以下优点:自动验证存储在 JSON 列的 JSON 文档。无效文档会产生错误。优化的存储格式。存储在 JSON 列中的 JSON 文档被转换为一种内部格式,允许对文档元素进行快速读

2021-12-25 23:30:59 1286

原创 11.4 空间数据类型

官方文档地址:11.4 Spatial Data Types11.4.1 Spatial Data Types11.4.2 The OpenGIS Geometry Model11.4.3 Supported Spatial Data Formats11.4.4 Geometry Well-Formedness and Validity11.4.5 Spatial Reference System Support11.4.6 Creating Spatial Columns11.4.7 Po

2021-12-25 10:33:35 542

原创 9.1.5 位值字面量

官方文档地址:9.1.5 Bit-Value Literals位值字面值使用b'val'或0bval表示法书写。 val是一个用0和1写的二进制值。前导b不区分大小写。 前导0b区分大小写,不能写成0B。合法的位值字面量:b'01'B'01'0b01非法的位值字面量:b'2' (2 不是二进制数)0B01 (0B 必须被写为 0b)默认情况下,位值字面量是一个二进制字符串:mysql> SELECT b'1000001', CHARSET(b'1000001');

2021-12-24 23:45:49 280

原创 9.1 字面量值

官方文档地址:9.1 Literal Values9.1.1 String Literals9.1.2 Numeric Literals9.1.3 Date and Time Literals9.1.4 Hexadecimal Literals9.1.5 Bit-Value Literals9.1.6 Boolean Literals9.1.7 NULL Values本节介绍如何在 MySQL 中写入字面量值。它们包括字符串、数字、十六进制和位值、布尔值和NULL。这一节还介绍了在 MyS

2021-12-24 23:01:59 297

原创 IntelliJ IDEA 最新版开箱指南

文章目录1. 开始试用2. 安装插件2. 开始设置2.1. 设置项目目录2.2. 关闭更新检查2.3. 开启自动导包2.4. 显示方法分隔2.5. 设置字体大小2.6. 设置代码模板2.7. 设置文件编码2.8. 设置 Maven我的当前环境:操作系统是 Windows11(前两天刚升级的新系统),开发环境 Java 11,以及 IDEA 版本 2021.3。下面主要说一下安装好 IDEA 后的一些必要的配置过程。该文章我会不断完善补充,需要的朋友可以收藏。1. 开始试用这节截图是后面补的,因为

2021-12-10 00:32:02 555

原创 Windows 系统故障:Java(TM) Platform SE binary 已停止工作

在IDEA中使用MAV的时候提示问题详细信息问题签名: 问题事件名称: BEX64 应用程序名: java.exe 应用程序版本: 11.0.11.0 应用程序时间戳: 6053928f 故障模块名称: StackHash_60bb 故障模块版本: 0.0.0.0 故障模块时间戳: 00000000 异常偏移: 000007feed11118c 异常代码: c0000005 异常数据: 0000000000000008 OS 版本: 6.1.7601.2.1

2021-12-03 22:06:15 2246 4

原创 IntelliJ IDEA 之 Maven 使用

本地安装 Maven注意与当前DIEA支持的maven版本要一致,不然会有兼容性问题。安装完毕需要在path中配置环境变量,不然其他地方不能直接使用mvn命令。IDEA配置maven直接使用默认IDEA捆绑的Maven插件即可,默认资源库就是在.m2下,默认的setting文件在DIEA的安装目录下的plugin目录下。一般需要修改下镜像什么的,我们可以修改在DIEA的安装目录下的plugin目录下的那个setting文件,同时也把自己安装的那个Maven的setting文件修改下,这样时为了防

2021-12-03 16:49:03 1666

原创 Java 语言中修饰符顺序和作用范围

Java 语言规范建议按照以下顺序列出修改符:Annotationspublicprotectedprivateabstractstaticfinaltransientvolatilesynchronizednativestrictfp不遵循此约定对技术没有影响,但会降低代码的可读性,因为大多数开发人员都习惯了标准顺序。......

2021-12-01 19:25:59 554

原创 SpringBoot 多模块依赖 Bean 无法注入

文章目录1. 关于 SpringBoot 自动注入及组件扫描2. SpringBoot 中的 @ComponentScan3. SpringBoot 中的 @SpringBootApplication4. 多模块注入示例一5. 多模块注入示例二6. 参考文档1. 关于 SpringBoot 自动注入及组件扫描在平时使用 Spring Boot 时,常常会使用到@Configuration、@Contoller,@Service,@Component等注解,被添加这些注解的类,在 SpringBoot

2021-12-01 00:06:11 7334 1

原创 Java 中的强制类型转换

在 Java 中强制类型转换分为基本数据类型和引用数据类型两种,这里我们仅讨论引用数据类型的强制类型转换。在 Java 中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需要强制转换。因为子类拥有比父类更多的属性、更强的功能,所以父类转换为子类需要强制。那么,是不是只要是父类转换为子类就会成功呢?其实不然,他们之间的强制类型转换是有条件的。当我们用一个类型的构造器构造出一个对象时,这个对象的类型就已经确定的,也就说它的本质是不会再发生变化了。在 Java 中我们可以通过继承、向上转

2021-11-30 23:26:58 1058

原创 Java 正则表达式使用记录

/** * 用户昵称 */@NotBlankprivate String nickname;/** * 登录账号 */@NotBlank@Pattern(regexp = "^[a-zA-Z0-9][a-zA-Z0-9_]{5,15}$", message = "账号长度6-16位,允许数字字母下划线,不能以下划线开头")private String username;/** * 登录密码 */@NotBlank(groups = Create.class)@Pattern(r

2021-11-30 14:09:16 159

原创 Spring EL 表达式的简单介绍和使用

package gtcom.governance.impl.util;import org.apache.commons.lang3.StringUtils;import org.springframework.expression.Expression;import org.springframework.expression.ExpressionParser;import org.springframework.expression.spel.standard.SpelExpressionPa

2021-11-28 18:02:50 12816

原创 Java 代码中需要使用转义符的地方

文章目录1. 正则表达式转义2. 文件路径转义1. 正则表达式转义Java 代码中使用到正则表达式里含有特殊字符时需要使用转义符\进行转义。. ? * + ! ^ $ [ ] ( ) \ 因为反斜线\也是特殊字符,所以特殊符号的转义需使用双反斜线\\,否则会报java.util.regex.PatternSyntaxException异常。public static void main(String[] args) { String string = "435212.jpg";

2021-11-24 22:42:02 3430 2

转载 Java 的非法反射警告 An illegal reflective access operation has occurred

最近使用 MyBatis-Plus 框架,在执行 SQL 查询的时候控制台日志提示了该警告信息,并且只有首次执行的时候才提示,同样的方法再次调用则不会提示,我用的 JDK11。下面转载一篇文章,解决了这个问题。反射是一项相当强大的特性,不仅在各类框架中被广泛应用,即使是在日常开发中我们也隔三差五得要和它打交道。然而在 JDK9 中 JDK 对反射加上了一些限制,需要注意。考虑有如下的代码:import java.lang.reflect.Field;import java.util.ArrayLi

2021-11-24 22:24:18 24845

原创 Java 实现字符串去特殊符号代码

去除字符串中的特殊符号:\n 回车(\u000a)\t 水平制表符(\u0009)\s 空格(\u0008)\r 换行(\u000d)工具类import org.apache.commons.lang3.ObjectUtils;import org.apache.commons.lang3.StringUtils;import java.util.ArrayList;import java.util.List;/** * @author wangbo * @date 2021

2021-11-24 19:46:42 6808

原创 程序设计六大原则简介

文章目录单一职责原则单一职责原则Single Responsibility Principle单一职责原则,简称SRP

2021-11-23 18:32:49 485

原创 SpringBoot 使用 AOP 打印请求参数和响应结果

添加依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>AOP 代码:package com.gtcom.api.aspect;import com.alibaba.fastjson.JSON;import com.g

2021-11-10 19:27:06 1507

原创 SpringBoot 请求响应中的时间类型字段配置

文章目录1. 响应配置1. 响应配置spring 转 json 的默认实现 jackson 中会根据时区去转换时间,而 jackson 的默认时区跟国内相差 8 小时,通过下面的配置可以统一指定时区和时间格式:spring.jackson.date-format=yyyy-MM-dd HH:mm:ssspring.jackson.time-zone=GMT+8这个配置时间格式只对java.util.Date类型的响应字段有效:private Date pubTime;...

2021-11-09 13:45:46 959

原创 Java 密码加密

MD5import lombok.NonNull;import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang3.StringUtils;import java.math.BigInteger;import java.nio.charset.StandardCharsets;import java.security.MessageDigest;import java.security.NoSuchAlgorithmExcept

2021-10-25 16:03:09 332

原创 query_string 查询

文章目录示例请求query_string 的顶级参数querydefault_fieldallow_leading_wildcardanalyze_wildcardanalyzerauto_generate_synonyms_phrase_queryboostdefault_operatorenable_position_incrementsfieldsfuzzinessfuzzy_max_expansionsfuzzy_prefix_lengthfuzzy_transpositionslenientmax

2021-10-23 17:16:06 3194 1

原创 match 查询

文章目录示例请求match 的顶级参数field 的参数备注短请求示例匹配查询如何工作fuzzinesszero_terms_querycutoff_frequency同义词官方文档地址:Match query返回与提供的文本、数字、日期或布尔值匹配的文档。在匹配之前对提供的文本进行分析。match查询是执行全文搜索的标准查询,包括模糊匹配选项。示例请求GET /_search{ "query": { "match": { "message": { "q

2021-09-21 16:34:34 687

原创 multi_match 查询

文章目录fields 和每个字段的增强multi_match 查询的类型best_fieldsmost_fieldsphrase 和 phrase_prefixcross_fieldscross_fields 和分析器tie_breakerbool_prefix官方文档地址:Multi-match querymulti_match查询建立在match查询的基础上,允许多字段查询:GET /_search{ "query": { "multi_match" : { "quer

2021-09-21 15:25:48 1889

原创 Redis Cluster 集群处理 slave,fail,noaddr 节点

文章目录1. 发现问题节点2. 删除问题节点3. 重新添加节点4. 设置为从节点1. 发现问题节点今天因为程序连接 Redis Cluster 出现问题,就上去看了一下集群状态,发现其中一个从节点状态异常,显示为slave,fail,noaddr,然后登录该问题节点,发现该节点的 ID 已经和集群中显示的 ID 不一样了。[test@node-10 ~]$ cd /usr/local/redis/bin[test@node-10 bin]$ ./redis-cli -c -h 127.0.0.1

2021-09-15 23:09:14 2445

原创 delete 接口

文章目录DeleteRequest可选参数同步执行异步执行DeleteResponse官方文档地址:Delete APIDeleteRequestDeleteRequest有两个必需参数:DeleteRequest deleteRequest = new DeleteRequest( "posts", //索引 "1");//文档ID可选参数可以提供以下参数://路由值deleteRequest.routing("routing");////使用Tim

2021-09-07 23:01:30 2121

原创 exists 接口

文章目录GetRequest同步执行异步执行existsSource官方文档地址:Exists如果文档存在,则 exists API 返回true,否则返回false。GetRequest它像 Get API 一样使用GetRequest。支持它的所有可选参数。由于exists()只返回true或false,我们建议关闭获取_source和任何存储字段,这样请求会稍微轻一些:GetRequest getRequest = new GetRequest( "posts", //索引

2021-09-07 22:38:04 204

原创 getSource 接口

文章目录Get Source 请求可选参数同步执行异步执行Get Source 响应官方文档地址:Get Source API这个 API 只帮助获取文档的_source字段。Get Source 请求一个GetSourceRequest要求下列参数:GetSourceRequest getSourceRequest = new GetSourceRequest( "posts", //索引 "1");//文档ID可选参数可以提供以下参数://上下文排除和包含的参数是可选

2021-09-06 23:18:13 345

原创 get 接口

文章目录Get Request可选参数同步执行异步执行Get Response官方文档地址:Get APIGet Request一个GetRequest要求下列参数:GetRequest getRequest = new GetRequest( "posts", //索引 "1");//文档ID 可选参数可以提供以下参数://禁用source检索,默认启用request.fetchSourceContext(FetchSourceContext.DO_

2021-09-04 22:28:36 1147

原创 Java 高级 REST 客户端之搜索 APIs

Java 高级 REST 客户端支持以下搜索 API:Search APISearch Scroll APIClear Scroll APISearch Template APIMulti-Search-Template APIMulti-Search APIField Capabilities APIRanking Evaluation APIExplain APICount APIOpen a point in time

2021-09-04 13:18:40 108

原创 Java 高级 REST 客户端之文档 APIs

Java 高级 REST 客户端支持以下文档 API:单文档的 API:Index APIGet APIGet Source APIExists APIDelete APIUpdate APITerm Vectors API多文档的 API:Bulk APIMulti-Get APIReindex APIUpdate By Query APIDelete By Query APIRethrottle APIMulti Term Vectors API...

2021-09-04 13:16:18 123

sonarsource认知复杂度文档CognitiveComplexity.pdf

sonarsource认知复杂度文档

2021-12-30

Navicate for MySQL-11.1.13版本和注册机

亲测可用,拿出来给大家分享一下

2017-06-01

空空如也

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

TA关注的人

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