自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 ElasticSearch保姆级教程[1]——SpringBoot 项目中使用 ES

保姆级ElasticSearch教程,从单机运行到集群部署,从http方式管理 es 到 在SpringBoot项目中集成es,从实操到原理 。

2022-05-09 11:28:10 1652

原创 数据同步神器——DataX 的源码学习

DataX的源码学习

2022-04-18 17:21:57 3936

原创 IO多路复用机制

讲述 阻塞IO、非阻塞IO以及 IO多路复用的原理

2023-04-25 14:27:23 736 1

原创 InnoDB中必须要了解的几个关键特性

InnoDB引擎在设计中使用了很多技术思想。下面我们主要介绍一些InnoDB的关键特性,帮助你去更好了解 InnoDB。

2023-04-24 10:31:02 540

原创 Linux-零拷贝及Java实现

零拷贝指的是在进行IO的时候减少或避免让CPU拷贝数据(数据在IO缓冲区中进行拷贝)减少甚至完全避免不必要的CPU拷贝,从而让CPU解脱出来去执行其他的任务减少内存带宽的占用通常零拷贝技术还能够减少用户空间和操作系统内核空间之间的上下文切换零拷贝涉及用户空间、内核空间,用户态以及内核态。操作系统为了保证系统运行的安全与稳定,内存中专门有一块区域用于运行操作系统程序,此内存区域就称为内核空间。内核空间不仅有操作系统内核代码,还有硬件驱动,可以直接操作硬件。

2023-04-19 11:27:52 662

原创 JVM内存泄露与溢出

从上图可以看出来,hreadLocalMap使用ThreadLocal的弱引用作为key,如果一个ThreadLocal不存在一个外部强引用时,Key(ThreadLocal)势必会被GC回收,这样就会导致ThreadLocalMap中key为null,而value还存在着强引用,只有thread线程退出以后,value的强引用链条才会断掉。为了避免这种情况,我们可以在不再需要静态集合中的元素时,手动将其从集合中移除,或者使用弱引用等更加安全和灵活的解决方案,以便及时释放内存并提高应用程序的性能。

2023-04-06 15:10:22 531

原创 Redis原理之 持久化

介绍Redis如何实现持久化的(单机)

2023-02-08 09:50:48 272

原创 ElasticSearch保姆级教程[3]——ElasticSearch的进阶

一个索引就是一个拥有几分相似特征的文档的集合。比如说,学生信息可以作为一个索引,学校专业信息可以作为一个索引,公司的员工信息也可以作为一个索引。一个索引由一个小写字母组成的名字来标识。我们必须有索......

2022-07-07 14:32:53 483

原创 ElasticSearch保姆级教程[2]——ES的部署

在文章开头,我们使用的是单点部署ES,整个过程十分简单。但是在实际的应用中,我们基本部署的都是 ES 集群。因为 单点部署 会遇到机器故障,导致不可用。所以为了实现 ES 的高可用,必须进行集群部署,即一台机器上部署一个 ES 节点。...

2022-07-07 14:30:18 382

原创 快速入门 Redis

从安装 到 使用 Redis的Java客户端,带你快速入门 Redis

2022-05-26 10:00:26 251

原创 能自动上传图片的 Typora 才是真的香 - 手把手教学如何配置

typora 配置图片自动上传

2022-04-20 09:30:12 690 1

原创 Java8 lambda表达式

首先,lambda是 指代 希腊字母表中排序第十一的字母,其应为名称就为Lambda。其作用就是避免匿名内部类定义过多,简化开发。实质属于函数式编程的范畴。

2022-04-11 13:51:50 424

原创 了解CompletableFuture

了解CompletableFuture为什么要引入CompletableFuture为了获得最佳性能表现,可能就需要仔细规划业务流程中的各个步骤的编排。而Java8就提供了这样一个即用容器来连接一系列任务。CompletableFuture 如何来构建一个任务链呢?这里就不先介绍API了,之前看应用场景。目前有一个需求:​ 我们需要从 数据中台中获取 安徽、江苏、浙江三省内所有企业信息 及其 子公司 的信息,并按 **子公司数量 **进行排序。我从观察到的代码(finchinaApp)中来看

2022-03-16 13:07:39 704

原创 函数-SQL(3)

字符串函数MySQL中内置了很多字符串函数,常用的如下:CONCAT(S1,S2,S3) : 字符串拼接,将S1,S2,S3拼接成一个字符串。LOWER(str) : 将字符串str全部转化为小写UPPER(str) : 将字符串str全部LPAD(str,n,pad) : 左填充,用字符串pad对str的左边进行填充,达到n个字符串长度。RPAD(str,n,pad) : 右填充,用字符串pad对str的右边进行填充,达到n个字符串长度。TRIM(str) : 去掉字符串头部和尾部的空格

2022-03-06 23:06:43 68

原创 用户管理与权限控制 - SQL(2)

用户管理常用命令查询用户:USE mysql;SELECT * FROM user;创建用户:CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';修改用户密码:ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码'删除用户:DROP USER '用户名'@'主机名'MySQL中定义了很多权限,常用的如下:权限说明ALL,A

2022-03-06 16:59:20 599

原创 基础-SQL(1)

1.Where与having的区别?执行的时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。执行顺序:where > 聚合函数 > having。判断条件不同:where不能对聚合函数进行判断,而having可以。分组查询时,分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义。2.SQL中是否支持多字段排序?    支持的。如果是多字段排序,当第一个字段值相同

2022-03-06 00:09:15 225

转载 一次完整的HTTP请求过程(转自博客园 Tyler‘s Blog)

https://www.cnblogs.com/tylerdonet/p/11613455.html

2022-03-02 22:47:30 70

原创 mac 配置 go语言环境(VSCode)

1. 通过brew安装go使用下列命令安装gobrew install go使用下列命令验证go是否安装成功go version // 如果成功 会显示版本信息2.配置环境使用下列命令查看go默认环境配置信息go env其中可以查看到 GOPATH="/Users/kxr/go"。此时执行下列命令cd /Users/kxr/go //很可能电脑中没有此路径,此时就需要手动创建mkdir -p /Users/kxr/go/{pkg,bin,src} //在/Users/kxr

2022-03-02 21:04:21 3872

原创 1. 两数之和

leetcode算法

2022-01-11 22:17:28 110

原创 esp32 连接 wife

#include <WiFi.h> // ssid: Wife name you need to connect;password: Wife passwordconst char* ssid = "123";const char* password = "66666666"; void setup() { Serial.begin(115200); // [1] Explanation below Serial.println(ssid); Serial.print

2022-01-07 00:03:18 2533 1

原创 HTTPSConnectionPool(host=‘api.registry.ns1.platformio.org‘, port=443):Max retries exceeded with url:

使用vscode安装arduino框架后,在为esp32下载代码时,如果遇到这种报错,是因为 platformio/tool-mkspiffs 没有安装成功。如果你开启了代理,那没有安装成功的原因可能就是代理的缘故。关闭代理,重新upload 下载即可。...

2022-01-06 23:26:31 1470 2

原创 Mapped Statements collection does not contain value for

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.example.

2022-01-02 13:57:22 8011

原创 centos8 安装docker 实现 tensoflow 模型的部署

1.首先为cenos8系统安装 docker使用国内 daocloud 一键安装命令:curl -sSL https://get.daocloud.io/docker | sh使用docker ps 会提示 docker 为启动。这时使用 systemctl start docker启动docker。启动docker后可以再次使用 docker ps验证是否启动。确保安装启动好docker后,可以浏览tensorflow的官方文档,这里介绍了tensorflow提供的一个工具 TensorFlow

2021-05-16 22:19:21 160

原创 mybatis 的 if-test 判断数据是否为空 或者 字符串是否为空

判断String类型的 数据是否为空或者为空字符串。<if test="longitude!=null || longitude!=''">s.longitude=#{longitude}</if>判断 Integer、Double等其他类型是,不能使用 != “”因为 在 Integer、Double类型中 对象属性值为 0 ,会被mybaits 会判断 对象==""。所以针对 Integer、Double等类型 只需要<if test="longitude!=nu

2021-05-08 21:15:08 10368 2

原创 mysql8 远程连接 出现 Access denied for user ‘root‘@‘localhost‘ (using password: YES)

在网上一般的解决方案 都是说 开启 mysql8到远程访问权限。有几种方法,都可以对root账户不限制 访问的ip。但是往往,在设置了远程访问权限后,我们还是不能 进行远程连接。其原因,可能是因为 user 表中有两个root账户,之前你只修改了 本地 root 账户的密码,而未修改/添加 远程root用户登陆的密码。该命令 修改 root 的远程访问的密码:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'

2021-05-05 00:00:58 5233 1

原创 SpringBoot 如何 进行 数据库事务管理

说起事务管理,首先我们要明确事务的概念,了解我们为什么要进行事务管理。事务管理是对于一系列数据库操作进行管理,一个事务包含一个或多个SQL语句,是逻辑管理的工作单元(原子单元) ---- 百度百科通俗的来说,每当我们使用后台对数据库表进行并发操作时,我们就会接触到事务。如果,我们能确保,不会在同一段时间内,多次访问数据库。那我就无需使用事务管理。在业务需要在同一时间段内对同一数据库表进行操作时,我们会遇到以下几个问题:脏读 : 一个事务读取到另一事务未提交的更新数据不可重复读 : 在同一事务

2021-03-19 15:06:16 1019 1

原创 json 字符串、对象、对象数组 之间的转换

首先必须我们都知道 服务器与客户端 之间的 请求交互 所传输的数据大部分都是json格式。不仅如此,后端其实也可以向发送http请求,获取外部api提供的数据。这时后端拿到就是json格式的数据了。对于json数据的处理,我使用的是 fastjson。这mvn项目可以使用<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <ver

2021-01-26 22:10:20 1819

原创 使用 xjar 加密 jar 包,并部署到 linux 服务器中。

首先附上资料地址 :xjar的github主页1、在springboot的pom文件中导入 xjar 依赖<dependencies> <dependency> <groupId>com.github.core-lib</groupId> <artifactId>xjar</artifactId> <version>4.0.2</version> </dependency>&lt

2021-01-26 21:39:53 2113 1

原创 linux搭建 go 环境

1、首先进入 go 语言官网。点击进入官网 进入后选择自己想要的版本,复制下载链接。2、在Linux命令行中 cd 到自己选定的下载目录,执行:wget https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz3、执行 tar 解压到 /usr/local 文件夹中tar -C /usr/local -zxvf go1.10.3.linux-amd64.tar.gz4、添加/usr/loacl/go/bin 目

2021-01-26 21:14:23 354

原创 java 获取数据库的系统时间

mysql中数据库的时间可分为:Date、DateTime、TimeStamp、Time类型。1、Date:没有时间部分。以YYYY-MM-DD格式显示。支持的范围是’1000-01-01’到’9999-12-31’。需要3字节。2、DateTime:有日期和时间部分。以YYYY-MM-DD HH:MM:SS格式显示。支持的范围是’1000-01-01 00:00:00’到’9999-12-31 23:59:59’。需要8字节。3、Time:表示一天中的时间。以HH:MM:SS格式显示。支持的范围是’

2021-01-20 11:59:45 2594

原创 算法——最短路径应用

材料整理完毕后,余先生被要求立即分发给B、C、D、E市。由于流行病,所有的材料都必须通过公路运输,许多城市都是单向的。例如,城市A单向进入(到达)城市E意味着,我们可以从城市A到城市E,而不经过其他城市,但我们不能以同样的方式返回。在分配之前,于先生分析了各个城市之间的路线。A与E有单向通道,运输距离为100公里。A与D之间有单向通道,运输距离为30公里。A有一条通往B的单程通道,运输距离为10公里。B与C之间有单程通道,运输距离为50公里。C与E有单向通道,运输距离为10公里。D与C有单向通道,运输距离为

2020-07-06 17:14:17 923 2

原创 算法——单链表应用

在抗击疫情的过程中,A市某组织的负责人收到了大量的物资,包括口罩、防护服、手术手套等。由于人手不足,搬运工只是把一箱箱的材料放在一个长长的架子上一箱一箱地搬过来。图1显示了这种情况。现在是先生。俞敏洪应该重新安排箱子,以便进一步分发。把同一种材料的盒子放在一起。图2显示了结果情况。尝试设计一个非递归算法/程序(时间复杂度<=O(n))来帮助余先生移动箱子。(2) 试着写一些线性结构的实际应用程序。提示:G表示手术手套。M表示面罩。C表示防护服。输入:G M G G G G C M M输出:M M

2020-07-06 16:52:15 357 1

原创 线性回归与逻辑回归有什么区别 ?—— 神经网络入门

在谈线性回归与逻辑回归前,我们先聊聊什么是回归吧?我们可以认为数据样本的所有数据都是具有一定关系的,其符合一定的分布规律。或者说我们可以将数据想象成各种曲线。而回归的作用就是确定这些曲线。所以我们可以根据这些确定的曲线,去预测一些我们还不知道。所以我们常说:回归就是一种拟合数据的方法。...

2020-04-28 09:17:14 964

原创 matlab 进行图片压缩 (采用最大池化的方法)

先贴上效果图:将读取图片,并将其赋给矩阵变量。并测算一下矩阵大小im=imread('1.jpg');imgsize = size(im);将图片进行预处理。因为这里我们进行池化操作的过滤器的尺寸是 3 * 3。所以对与一些图片尺寸的大小(长宽)不能为3整除的,我们需要进行处理。while 1==1 if mod(imgsize(1),3)== 0 ...

2020-03-27 09:54:02 5060 4

原创 springboot的内置tomcat配置https

1.将https证书文件(.pfx文件),放在resources目录下#为端口配置https协议server.ssl.key-store=classpath:2118544_www.hfuu.top.pfxserver.ssl.key-store-password=ukz4uNy2server.ssl.keyStoreType=PKCS12...

2020-03-10 23:16:14 623

原创 基于git使用vscode提交代码

首先,我们使用git工具在本地创建一个git仓库(创建.git文件)。git init1 . 查看是否曾经配置过git的全局用户名与邮箱。如果和我一样已经配置过了git的全局用户名和邮箱,那么以后我们创建git仓库都会使用这个全局用户名和邮箱(如果你即使用gitee也用github就记得更改成相同的全局名),记得还有密钥需要配置哦。git config user.name2 . 如果这...

2020-03-05 11:50:25 397

转载 mybatis写当天 当月的数据 时间段数据

1 数据库字段pk_time(Varchar)当天的数据 SELECT * FROM 表 WHERE date(fk_time) = curdate();当月的数据SELECT *FROM 表 WHERE DATE_FORMAT(fk_time,'%Y%m')=DATE_FORMAT(CURDATE( ),'%Y%m')昨天SELECT * FROM 表名 WHERE TO...

2020-03-04 17:16:14 717

原创 One CLI for webpack must be installed. These are recommended choices, delivered as separate packages

在我们执行安装命令npm install webpack -g 与npm install --global vue-cli后,常常会要求我们安装webpack-cli。但是我们安装webpack-cli时,却又报出找不到 webpack-cli的错误。这是我们可以:先全局安装webpack和webpack-clinpm install webpack -gnpm install webp...

2020-03-04 15:14:07 297

原创 使用git工具提交代码至码云(及从码云上下拉)

都是先在项目的根目录上,打开git bash。输入git init,会在该目录下生成.git文件夹。添加需要上传到码云的代码到本地仓库。3.1 这里我们输入git status,出现的红色文件或文件夹就是我们未添加到本地仓库的。3.2 接着我们可以输入git add --all,会将该目录下所有文件添加到本地仓库。当然我们选择输入git add xxxx(xxxx为文件名)...

2020-02-26 18:14:02 1440

原创 1050Ti 安装CUDA、cuDNN

我的笔记本配置的是1050Ti显卡,所以这里我依照自己的配置选择cuda与cuDNN的版本。本文后续部分主要也是转载 宽长高 博主的。但是与该博主不同的是cudnn我选择的是7.0.4(亲测不能选择 7.4.1版)。这里附上我自己的tensorflow、CUDA、cuDNN的版本依赖图:版本查看1.下载cuda9.0cuda9.0下载地址:cuda9.0.根据要求选择系统和版本进行下载即...

2019-12-11 23:20:25 8628 2

为tomcat服务器配置https,tomcat需要设置的server.xml与web.xml配置

为tomcat服务器配置https,tomcat需要设置的server.xml与web.xml配置。可以帮助小白为tomcat服务器配置https协议(域名)。

2020-03-10

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

TA关注的人

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