自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Docker镜像导入导出

【代码】Docker镜像导入导出。

2024-06-03 21:11:54 170 1

翻译 Mysql的几种日志-面试专题

binlog记录数据库表结构和表数据变更,比如update/delete/insert/truncate/create,它不会记录select。存储着每条变更的SQL语句和XID事务Id等等。主要有两个作用:复制和恢复数据主要有两个作用:复制和恢复数据【1】MySQL架构为了高可用性都是一主多从,从服务器需要与主服务器保持数据一致,这就是通过binlog进行复制;【2】数据库的数据如果被误删,可以通过binlog数据进行恢复。

2024-02-22 12:53:26 51 1

原创 Mysql的SQL调优-面试专题

通常为了方便拼装查询条件,我们会默认使用该条件,数据库引擎会放弃索引进行全表扫描。貌似两种方式效率差不多,即使union扫描的是索引,or扫描的是全表)优化方式:用代码拼装sql时进行判断,没where加where,有where加and。6、尽量避免进行null值的判断,会导致数据库引擎放弃索引进行全表扫描。优化方式:如果是连续数值,可以用between代替。优化方式:可以给字段添加默认值0,对0值进行判断。优化方式:使用具体的字段代替 *,只返回使用到的字段。优化方式:尽量在字段后面使用模糊查询。

2024-02-21 23:53:01 1793

原创 Docker安装RcoketMQ

以上测试时,使用的是公网IP,需要开放服务器端口(可能不安全),如设置内网集群部署,继续学习更新…;

2024-01-28 18:37:09 476

原创 Docker安装常用的开发组件

以上yml文件,只是设置了最简单的配置,后续其他组件或者复杂配置继续添加。

2024-01-25 16:27:49 461

原创 Docker安装Mysql

1、拉取官方mysql5.7镜像。

2024-01-22 17:51:09 422

原创 Windows查找端口并清理进程

Linux及其Mac后续添加,未完待续。

2023-12-20 17:49:30 84

原创 Doris实战笔记

这是因为 build-env-for-0.15.0 版本镜像升级了 thrift(0.9 -> 0.13),需要通过 --clean 命令强制使用新版本的 thrift 生成代码文件,否则会出现不兼容的代码。建议以挂载本地 Doris 源码目录的方式运行镜像,这样编译的产出二进制文件会存储在宿主机中,不会因为镜像退出而消失。第一个**-v**,本地服务器maven的.m2地址,: 后为docker内部地址。第二个**-v**,本地源码的地址,: 后为docker内部地址。编译完成后,产出文件在。

2023-05-29 22:53:46 2458 3

原创 Ubuntun20安装及其部署

启动完成后记得使用:redis-cli shutdown,否则后面全局无法启动。以上方法设置后,竟然直接可以使用systemctl实现,暂不清楚为何。把 daemonize no 改为 daemonize yes。上面的命令可能会和下面的自启动冲突,下面的失效使用上的。1、安装net-tools,方便使用:ifconfig。5、安装vim,否则出现vi上下左右为ABCD的问题。没有用root登录,而是用其他账户,参考方法6。2、安装ssh,方便客户端ssh访问。后续增加大小写及其其他设置。

2023-05-20 01:27:03 1144

原创 SDK版本管理工具-SDKMAN

可以安装SDKMAN!到 $HOME/.sdkman 以外的自定义位置。这可以通过在安装之前将您的自定义位置导出为 SDKMAN_DIR 来实现。为此,您的用户必须拥有对该文件夹的完全访问权限,这一点至关重要。该文件夹不作为 SDKMAN 存在也很重要!将尝试创建它。

2023-05-09 12:40:39 1036

原创 Centos7.6部署ruoyi-vue记录

使用mvn package打包后,在ruoyi-admin目录获取ruoyi-admin.jar,上传服务器运行即可。以上讨论的方式都是基于原始的部署方式,docker部署后续增加。

2023-04-29 21:46:30 300

原创 腾讯云服务器Centos7.6初始化

腾讯云服务器Centos7.6初始化

2022-11-06 22:46:53 1328

原创 Mybatis转义字符(大于、小于、等于...)

Mybatis转义字符(大于、小于、等于...)

2022-10-12 16:42:43 2674

转载 git删除push到远程服务器的commit

git删除commit记录

2022-10-08 18:29:13 4533 3

原创 PicGo+Gitee+Topyra图床设置

PicGo+Gitee+Topyra图床设置

2022-09-23 13:54:21 124

原创 ThreadPoolExecutor源码剖析

三、线程池的执行流程为什么要先进行阻塞在去尝试创建非核心线程:**举例解释:**饭店(线程池)-厨子(线程)-排队(阻塞)、招厨子(创建线程)?-今日客满(拒绝策略)4.2、线程池的状态变化从execute方法开始(对应4.2的线程变化图):通过上述源码,线程池的执行流程,同4.2,以下将进行addWorker方法七、Worker的封装runWorker方法:可以继续深入getTask方法,以及processWorkerExit方法......

2022-06-08 18:22:54 391

原创 CopyOnWriteArrayList学习

CopyOnWriteArrayList简介  在很多应用场景中,读操作可能会远远大于写操作。由于读操作根本不会修改原有的数据,因此对于每次读取都进行加锁其实是一种资源浪费。我们应该允许多个线程同时访问 List 的内部数据,毕竟读取操作是安全的。  这和我们之前在多线程ReentrantReadWriteLock读写锁的思想非常类似,也就是读读共享、写写互斥、读写互斥、写读互斥。JDK中提供了CopyOnWriteArrayList类比相比于在读写锁的思想又更进一步。为了将读取的性能发挥到极致,Cop

2022-05-26 12:10:57 140

原创 HashMap原理学习

1、HashMap 简介HashMap 主要用来存放键值对,它基于哈希表的Map接口实现,是常用的Java集合之一。JDK1.7:数组+链表:“拉链法” :将链表和数组相结合。也就是说创建一个链表数组,数组中每一格就是一个链表。若遇到哈希冲突,则将冲突的值加到链表中即可。JDK1.8:数组+链表+红黑树:相比于之前的版本,jdk1.8在解决哈希冲突时有了较大的变化,当链表长度大于阈值(默认为8)时,将链表转化为红黑树,以减少搜索时间。2、hashMap基本属性publicclassHas

2022-05-25 11:56:10 115

转载 前端JS接口错误、超时处理

// postAPI(data) 网络接口 let promise = new Promise((resolve,reject)=>{ const timer = setTimeout(()=>{ reject("timeout"); },1000); // 若接口未返回,则1秒后reject, postAPI(data,res()=>{ clearTimeout(timer); // 关闭定时器 resolve(res); // 接口.

2022-05-24 15:07:36 4078

翻译 Java8的Stream流学习总结

什么是 Stream?Stream(流)是一个来自数据源的元素队列并支持聚合操作元素是特定类型的对象,形成一个队列。 Java中的Stream并不会存储元素,而是按需计算。数据源 流的来源。 可以是集合,数组,I/O channel, 产生器generator 等。聚合操作 类似SQL语句一样的操作, 比如filter, map, reduce, find, match, sorted等。和以前的Collection操作不同, Stream操作还有两个基础的特征:Pipelining: 中

2022-05-24 11:36:47 162

原创 uniapp微信支付方案

使用uniapp对接微信支付,目前发现有两种方式:微信支付原生方式;uniapp的unipay方式(unicloud)。本次由于暂不熟悉unicloud方式,后面仔细研究unicloud方式。注意事项:同时目前的微信支付分为V2和V3版本,注意版本选择开发链接指引1、普通商户开发流程文档2、开发指引附带代码文档后端创建订单1、使用开发指引2进行后端下单,生成参数前端使用;2、签名生成算法见:https://pay.weixin.qq.com/wiki/doc/apiv3/wecha

2022-05-10 16:41:46 3733

原创 CAS-CompareAndSet源码分析

CAS是什么?第一反应应该有两种:1、Cas单点登录,当然本次不讨论这一方面的问题;2、compareAndSet方法,先学习其API,再精通原理,才是我们学习代码的正确方法,不要被我们小时候填鸭式的教学影响,和学习数学、英语等知识学科不同,因此直接来一段代码:CAS API用法: //原子操作 AtomicInteger atomicInteger = new AtomicInteger(5); //期望值为5,若和5相同,则改为2019 System.out.println(atomic

2022-02-23 18:42:18 479

转载 vue动态绑定class的最常用几种方式

https://www.cnblogs.com/lwming/p/10925318.html

2022-01-19 14:33:40 113

原创 https免费证书获取方式

1、前往来此加密官网申请证书https://letsencrypt.osfipin.com/2、申请证书,3、验证证书:dns验证:前往所在云dns解析服务https认证:使用nginx认证4、下载证书后,切记不能用迅雷下载,要用浏览器自带下载,否则会造成文件丢失......

2022-01-10 10:46:27 4586

原创 el-select如何选择整个对象item

el-select选择整个对象踩坑记录1、官方文档说明2、整个对象item被选择的方法:必须使用value-key3、参考链接:1、官方文档说明  官方文档提到一句说:这里说的对象指的就是选择器中的对象或数组的item对象2、整个对象item被选择的方法:必须使用value-key<el-select v-model="subProjectInfo.user" value-key="userName" placeholder="请选择人员" @change="change">

2021-12-15 11:40:41 1595

原创 Mybatis分页插件Pagehelper分析

Mybatis分页插件Pagehelper用法及其分析0、PageHelper的用法:在service层中的mapper接口前加入,只分页statrtPage后的第一个sql://实现分页方法PageHelper.startPage(startIndex, endIndex);//前端经常需要获取总条数或者总页数,就需要在返回的结果做处理,list为查询返回结果Long total = new PageInfo(list).getTotal();//通过自定义的统一返回值返回给前端或

2021-12-09 16:36:52 298

翻译 MySQL数据类型与Java数据类型

  MySQL Connector/J在处理MySQL数据类型和Java数据类型之间的转换方面非常灵活。通常,任何MySQL数据类型都可以转换为java.lang。String和任何数字类型都可以转换为任何Java数字类型,尽管可能会发生舍入、溢出或精度损失。  Connector/J按照JDBC规范的要求发出警告或抛出DataTruncation异常,除非通过使用属性jdbcCompliantTruncation并将其设置为false,将连接配置为不这样做。  下表中列出了始终保证有效的转换。第一列

2021-12-07 16:32:55 1805

原创 css控制字符长度超出变成点点点显示(单行,多行)

单行:width 必不可少.div{ width: 80%; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;}多行(需要浏览器支持该属性):.div{ overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -w

2021-11-11 15:00:17 1435

转载 mybatis 实现多条update同时执行

mybatis 实现多条update同时执行想在mapper的一个更新节点进行多条update语句的操作: <update id="cleanUserByPhone" parameterType="java.lang.String"> update user set valid_status = 1 where mobile_phone = #{mobilePhone}; update user_account set valid_status = 1 where mobile_ph

2021-11-10 12:04:05 1828

原创 前后端参数对应总结

文章目录前后端交互参数总结一、Web端的Axios传参二、Uniapp使用Luch-request传参前后端交互参数总结一、Web端的Axios传参前端使用Axios,后端使用SpringBoot:1、url的param类型:(1)、常规的形如:“xxx/coop/list?pageNum=1&pageSize=10” //前端js Api export function getSubProjectList(param) { return request({ url:

2021-09-27 16:39:14 606 2

原创 Ftp用户和用户组操作

Ftp用户和用户组操作1、添加用户组命令groupadd -g 140 tbeaftp2、用户添加入用户组gpasswd -a "用户" “用户组”3、改变文件用户组 chgrp -R “用户组” "文件夹"4、更改文件夹权限,使得当前用户组成员访问chmod -R 775 “文件夹”5、查看用户组命令cat /etc/group6、修改文件夹归属chown -R “用户” "文件夹"...

2021-02-20 19:34:38 1543

转载 Mysql的GROUP BY和JOIN学习

GROUP BY分组( GROUP BY)操作和其他的关系操作不同,因为它改变了关系的结构。来看下面的示例: SELECT department_id, count(*), first_name FROM employees GROUP BY department_id;该语句的目的是按照部门统计员工的数量,但是存在一个语法错误,就是 first_name 不能出现在查询列表中。原因在于按照部门进行分组的话,每个部门包含多个员工;无法确定需要显示哪个员工的姓名,这是一个逻辑上的错误。所以

2020-10-10 11:23:16 2162

原创 Vue父子组件之间的传值

Vue父子组件之间的传值父组件向子组件传值传递静态或动态 Prop<blog-post title="My journey with Vue"></blog-post>prop 可以通过 v-bind 动态赋值,例如:<!-- 动态赋予一个变量的值 --><blog-post v-bind:title="post.title"></blog-post><!-- 动态赋予一个复杂表达式的值 --><blo

2020-09-23 17:47:13 147

转载 Linux防火墙Firewall和Iptables的使用

Linux防火墙Firewall和Iptables的使用Linux中有两种防火墙软件,ConterOS7.0以上使用的是firewall,ConterOS7.0以下使用的是iptables,本文将分别介绍两种防火墙软件的使用。Firewall开启防火墙:systemctl start firewalld关闭防火墙:systemctl stop firewalld查看防火墙状态:systemctl status firewalld设置开机启动:systemctl en

2020-09-23 11:53:22 163

转载 Mybatis 中遍历map 参数中的 list 和 array 属性

Mybatis 中遍历map 参数中的 list 和 array 属性文章目录Mybatis 中遍历map 参数中的 list 和 array 属性问题解决方案代码controller层dao层mapper.xml参考链接问题在项目有中遇到批量删除操作时,需要根据两个属性去删除数据,其中一个是类型:type,另一个是ids:数组形式的id数组。由于在官方文档中只是简单的介绍foreach的用法,套用之后进行批量删除操作:提示遍历map中的array 属性是无法获取值.解决方案代码controll

2020-09-22 15:39:03 1211

转载 JS中var和let的区别

var和let的区别:区别:1.使用var声明的变量,其作用域为该语句所在的函数内,且存在变量提升现象;2.使用let声明的变量,其作用域为该语句所在的代码块内,不存在变量提升;3.let不允许在相同作用域内,重复声明同一个变量。1.基本语法{ let a = 125; var b = 521;}a // Uncaught ReferenceError: a is not definedb // 521总结:使用let声明的变量报错,var声明的返回正确的值,这说明,let声明

2020-09-10 14:57:24 24040 5

原创 flex布局样例

flex布局样例<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <div class="first-face"> <span class="pip"></span> </div> <div class=

2020-09-08 10:43:44 132

原创 String,StringBuffer,StringBulider笔记

String,StringBuffer,StringBulider之间的区别1、三者的简单说明  String:字符串常量;  StringBuffer:字符串变量,可以动态构造字符数据。StringBuffer类是可以通过Append()来修改值。线程安全  StringBuilder:字符串变量,线程不安全。2、三者在执行速度方面的比较  StringBuilder > StringBuffer > String3、三者使用场景  3.1、如果要操作少量的数据用 = S

2020-06-05 10:44:13 117

原创 遍历List的4种方法

个人总结:package tbea;import java.util.ArrayList;import java.util.Arrays;import java.util.Iterator;import java.util.List;/** * Created by sunRainAmazing on SUN_RAIN_AMAZING * @author sunRainAmazing */public class TraversalList { //http://www.cn

2020-05-28 17:57:37 248

转载 数据库SQL调优的几种方式(转)

数据库SQL调优的几种方式(转)原文地址:https://blog.csdn.net/u010520146/article/details/81161762在项目中,SQL的调优对项目的性能来讲至关重要,所有掌握常见的SQL调优方式是必不可少的,下面介绍几种常见的SQL的调优方式,供借鉴.文章目录数据库SQL调优的几种方式(转)一.创建索引二.避免在索引上使用计算三.使用预编译查询四.调整Where字句中的连接顺序五.尽量将多条SQL语句压缩到一句SQL中六.用where字句替换HAVING字句七

2020-05-22 15:04:37 1847

git-proxy.bat

git-proxy.bat

2024-05-30

Doris实战笔记-be依赖包

Doris实战笔记-be依赖包

2023-05-29

Doris实战笔记-be依赖包

Doris实战笔记-be依赖包

2023-05-29

Doris实战笔记-be依赖包

Doris实战笔记-be依赖包

2023-05-29

jar包转pom

在界面输入jar包路径,将会自动转化为pom.txt,之后再手动改名为pom.xml即可

2019-05-07

空空如也

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

TA关注的人

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