- 博客(84)
- 资源 (7)
- 收藏
- 关注
原创 HBuilderX工具快捷键
预设快捷键方案切换: webstorm选中快捷键选中光标后面的文字同一行shift + cmd + 右箭头选中光标后面所有文字shift + cmd + 下箭头跳转快捷键转到定义option + 左单击
2024-09-02 15:03:46
242
原创 uniapp组件知识记录
style标签的lang<template> <view class="content"> <h1 class="test"><span class="test1">我</span></h1>是谁 </view></template><style lang="scss"> .content { // content中允许定义下个层级标签或多层级中的样式,不能定义同级标签或者样式
2024-09-02 14:59:55
763
原创 IDEA回滚代码
切换到需要回滚的分支选择回滚到某一次提交选择要回滚到的某次提交记录,回滚后代码和这次提交保持一致选择Hard选择分支的最新提交记录并复制版本号回滚本地代码产生文件变更将第3步复制的版本号,填写到to commit,点击Reset,这样本地就回滚了代码,并产生了文件变更。回滚远程代码提交并推送到远程分支,远程分支代码也回滚了......
2022-06-25 16:44:39
6303
原创 安装elasticsearch
下载历史版本常见错误解决不能使用root账号启动的错误添加用户组和用户并设置密码,设置es安装目录的权限归属使用es用户启动es外网无法访问es问题默认情况下,只允许本机访问,如果需要远程访问,可以修改安装目录的文件,去掉的注释,将它的值改成,然后重新启动 错误一:问题翻译过来就是:用户拥有的可创建文件描述的权限太低,至少需要;解决方法:切换到root用户修改,在最后面追加下面内容错误二:分配给es服务内存太小解决方法:切换到root账号这种方法修改在服务重启后,需
2022-06-05 22:25:27
298
原创 springcloud Stream整合Kafka入门
安装http://mirror.bit.edu.cn/apache/kafka/2.8.1/kafka_2.13-2.8.1.tgztar zxvf kafka_2.13-2.8.1.tgz启动启动zk[root@log-system bin]# ./zookeeper-server-start.sh -daemon ../config/zookeeper.properties启动kafka[root@log-system bin]# ./kafka-server-start.sh -da
2022-05-03 21:39:18
1935
原创 git命令
执行完commit后,想撤回commit,怎么办?这样凉拌:~ git reset --soft HEAD^这样就成功的撤销了你的commit注意,仅仅是撤回commit操作,您写的代码仍然保留暂存所有变更的文件到暂存区~ git add.提交暂存区的文件~ git commit -m '1'推送提交的文件~ git push查看本地有变更的文件~ git diff查看暂存区的文件~ git diff --cached修改提交日志显示的用户名和邮箱cancanli
2022-05-03 12:01:20
292
原创 雪花算法工具类
雪花算法简介:雪花算法介绍什么是雪花算法分布式唯一ID生成策略为什么要用雪花算法同一业务场景要全局唯一生成速度快性能好 CPU密集型实现简单没有依赖雪花算法生成原则和原理使用41bit作为毫秒数,10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID),12bit作为毫秒内的流水号(意味着每个节点在每毫秒可以产生 4096 个 ID),最后还有一个符号位,永远是0使用雪花算法高效生成唯一code工具类/** * Twitter_Sno
2022-05-03 11:56:55
186
原创 一键提交代码脚本
编写脚本push.sh 放在提交根目录中git add .read commentif [ -n "$comment" ]; then comment=$commentelse comment="空的提交描述"figit commit -m "$comment"git push执行权限chmod 777 push.sh提交效果执行脚本回车两次,默认不指定提交描述时默认描述是空的提交描述自定义提交内容描述...
2022-04-23 17:31:57
275
原创 部署nexus3.x私服
依赖软件JDK,Maven下载nexus下载: https://help.sonatype.com/repomanager3/product-information/download解压:tar zxvf nexus-3.38.1-01-unix.tar.gz添加用户授权添加用户nexus/nexuschown -R nexus /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64chown -R nexus /usr
2022-04-15 22:29:01
375
原创 遇到的问题
内容分类详情Java高频面试题汇总入口JVMJVM面试题并发并发面试题SpringCloudSpringCloud面试题DubboDubbo面试题RocketMQRocketMQ面试题遇到的问题遇到的问题缓存穿透缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据,黑客攻击。缓存击穿缓存击穿是指缓存中没有但数据库中有的数据(一般是缓存时间到期),这时由于并发用户特别...
2022-04-10 21:34:54
701
原创 面试官的其他问题
内容分类详情Java高频面试题汇总入口JVMJVM面试题并发并发面试题SpringCloudSpringCloud面试题DubboDubbo面试题RocketMQRocketMQ面试题遇到的问题遇到的问题大批量多任务数据导出excel线程池的原理在项目中的使用分库分表带来的问题sharding jdbc分表策略xxl-job分片的实现DAO接口为什么能找XML并执行sql?队列的种类,原理Mysql中的锁有哪些为什么...
2022-04-10 21:31:56
264
原创 算法面试题
雪花算法四个组成部分不使用 :1bit,最高位是符号位,0 表示正,1 表示负,固定为 0时间戳 :41bit,毫秒级的时间戳(41 位的长度可以使用 69 年)标识位 :5bit 数据中心 ID,5bit 工作机器 ID,两个标识位组合起来最多可以支持部署 1024 个节点序列号 :12bit 递增序列号,表示节点毫秒内生成重复,通过序列号表示唯一,12bit 每毫秒可产生 4096 个 ID优点:高性能高可用:生成时不依赖于数据库,完全在内存中生成高吞吐:每秒钟能生成数百万的自增 ID
2022-04-10 21:31:14
1175
原创 Redis面试题
持久化RDB 持久化: 生成某个时间点的快照文件AOF 持久化(append only file): 日志追加模式(Redis协议格式保存)RDB基本原理:RDB持久化主要是通过SAVE和BGSAVE两个命令对Redis数据库中当前的数据做snapshot并生成rdb文件来实现的。其中SAVE是阻塞的,BGSAVE是非阻塞的,通过fork了一个子进程来完成的。在Redis启动的时候会检测rdb文件,然后载入rdb文件中未过期的数据到内存中。Redis 启动时会从 rdb 文件中恢复数据到内存, 因此
2022-04-10 21:20:58
722
原创 Mybatis面试题
DAO都是接口它是怎么执行SQL的解析XML文件,Mybatis在初始化SqlSessionFactoryBean的时候,找到mapperLocations路径去解析里面所有的XML文件。创建SqlSource:根据sql语句的不同,分为staticSqlSource和DynamicSqlSource。创建创建MappedStatement:XML文件中的每一个SQL标签就对应一个MappedStatement对象,这里面有两个属性很重要。id:全限定类名+方法名组成的ID。sqlSour
2022-04-10 21:19:27
232
原创 MySQL面试题
内容分类详情Java高频面试题汇总入口JVMJVM面试题并发并发面试题SpringCloudSpringCloud面试题MySQL并发带来的问题脏读:一个事务读取到另一个事务更新但还未提交的数据,如果另一个事务出现回滚或者进一步更新,则会出现问题。不可重复读:在一个事务中两次次读取同一个数据时,由于在两次读取之间,另一个事务修改了该数据,所以出现两次读取的结果不一致。幻读:在一个事务中使用相同的 SQL 两次读取,第二次读取到了其他事务新...
2022-04-10 21:18:14
569
原创 SpringBoot面试题
Spring和SpringBoot常用注解Spring注册Bean的注解:@component@Component被用在要被自动扫描和装配的类上。@Bean主要被用在方法上,来显式声明要用生成的类。@Repository@Controller@Service@ConfigrationSpringBoot@SpringBootApplication申明让spring boot自动给程序进行必要的配置,这个配置等同于:@Configuration ,@Ena
2022-04-10 21:04:28
449
原创 分布式面试题
分布式事务解决方案Seata原理在 Seata 中主要有以下三种角色,其中 TM 和 RM 是作为 Seata 的客户端与业务系统集成在一起,TC 作为 Seata 的服务端独立部署:事务协调器(TC):维护全局事务的运行状态,负责协调并驱动全局提交或回滚。事务管理器(TM):事务发起方,控制全局事务的范围,负责开启一个全局事务,并最终发起全局提交或回滚全局的决议。资源管理器(RM):事务参与方,管理本地事务正在处理的资源,负责向 TC 注册本地事务、汇报本地事务状态,接收 TC 的命令来驱动本地事
2022-04-10 21:03:13
578
原创 Spring面试题
Spring对Bean加载过程,结合源码?1.获取配置文件资源:通过 ResourceLoader 来完成资源文件位置的定位,DefaultResourceLoader 是默认的实现, 同时上下文本身就给出了 ResourceLoader 的实现,可以从类路径、文件系统, URL 等方式 来定为资源位置。2.对bean定义信息的解析:容器通过 BeanDefinitionReader 来完成 bean 定义信息的解析,使 用的是 XmlBeanDefinitionReader 来解析 bean 的
2022-04-10 21:00:19
603
原创 接口和抽象类使用场景
接口和抽象类的使用动机不同,从而决定是使用接口还是使用抽象类,使用抽象类是为了代码的复用,使用接口是为了实现多态,当不确定使用接口还是使用抽象类时,就从使用目的出发决定,提高代码复用性就是用抽象类,想实现多态就是用接口。使用抽象类的场景1. 抽离重复代码2. 实现多态使用接口类的场景1. 实现类可以扩展功能,也可以选择不扩展功能2. 是规范入参和出参类型3. 实现多态如果某些类都可以有功能方法或属性,那就把这些功能方法封装为抽象类。如果某些类满足场景的变化,各个类可选择添加功能方法或不添加
2022-02-15 14:07:10
1460
原创 RocketMQ面试题
内容分类详情Java高频面试题汇总入口JVMJVM面试题并发并发面试题SpringCloudSpringCloud面试题DubboDubbo面试题RocketMQRocketMQ面试题多个 MQ 如何选型MQ描述RabbitMQerlang 开发,对消息堆积的支持并不好,当大量消息积压的时候,会导致 RabbitMQ 的性能急剧下 降。每秒钟可以处理几万到十几万条消息。RocketMQJava 开发,面向互联...
2022-01-27 22:00:02
4078
原创 Dubbo面试题
内容分类详情Java高频面试题汇总入口JVMJVM面试题并发并发面试题SpringCloudSpringCloud面试题DubboDubbo面试题Dubbo 核心组件有哪些Provider:暴露服务的服务提供方。Consumer:调用远程服务消费方。Registry:服务注册与发现注册中心。Monitor:监控中心和访问调用统计。Container:服务运行容器。Dubbo 使用过程中都遇到了些什么问题在注册中心找不到对应的服务...
2022-01-26 16:21:14
266
原创 并发面试题
线程的生命周期Thread常用方法start()启动线程,线程状态由创建变为就绪。String getName()返回线程的名称run()线程在被调度时执行的操作Thread currentThread()返回当前线程 。在 Thread 子类中就是 this ,通常用于主线程和 Runnable 实现类inte
2022-01-24 20:51:19
645
原创 JVM面试题
讲解JVM内存模型程序计数器:当前线程所执行的字节码的行号指示器,用于记录正在执行的虚拟机字节指令地址,线程私有。Java虚拟栈:存放基本数据类型、对象的引用、方法出口等,线程私有。Native方法栈:和虚拟栈相似,只不过它服务于Native方法,线程私有。Java堆:java内存最大的一块,所有对象实例、数组都存放在java堆,GC回收的地方,线程共享。方法区:存放已被加载的类信息、常量、静态变量、即时编译器编译后的代码数据等。回收目标主要是常量池的回收和类型的卸载,各线程共享JVM堆内存模
2022-01-17 21:42:45
944
原创 操作系统章节
内容分类详情软考所有资料汇总入口软考大纲软件设计师考试大纲考点导图知识点思维导图持续更新笔记计算机组成结构 操作系统真题解析…操作系统概述操作系统的作用:通过资源管理提高计算机系统的效率;改善人机界面向用户提供友好的工作环境。操作系统的特征:并发性、共享性、虚拟性、不确定性。操作系统的功能:进程管理、存储管理、文件管理、设备管理、作业管理(作业管理没有考过)。操作系统的分类:批处理操作系统、分时操作系统(轮流使用CPU工作片...
2022-01-13 20:09:40
1192
原创 计算机组成机构章节
计算机硬件组成1.计算机的硬件基本系统有五大部分组成:运算器、控制器、存储器、输入设备(如鼠标键盘)、输出设备(如显示器)2.存储器分为内部存储器(即内存,容量小,速度快,临时存放数据)和外部存储器(即硬盘、光盘等,容量大,速度慢,长期保存数据)3.输入设备和输出设备合并称为外部设备,即外设4.主机:CPU+主存储器中央处理单元CPU(考点)1.中央处理单元组成:由运算器、控制器、寄存器组和内部总线组成。寄存器比内存的速度快好几个档次。2.中央处理单元功能:实现程序控制、操作控制、时间控制、
2022-01-12 10:27:39
1458
1
原创 select结果再update
select再updateupdate中使用select查询出的数据-通用模式:update a inner join (select * from b) c on a.id = c.id set a.xx = c.xxx
2021-12-28 10:13:12
399
原创 行锁和表锁
mysql有很多人锁包括:悲观锁、乐观锁、表锁、行锁、临间锁、间隙锁、记录锁、共享锁、排他锁、意向共享锁、意向排他锁。mysql中的锁的机制大部分都是采用的悲观锁。行锁与表锁mysql的行锁是基于索引添加的。产生的原因:sql使用走了索引,但是仍不提交,就产生了行级别的死锁。模拟行锁首先navicat打开两个会话窗口连接A和B,A会话中设置为手动提交,会话B中设置自动提交。表test_lock有一个name的索引会话A更新数据会话B也更新这条数据-fail会话B更新其他数据-ok
2021-12-28 10:12:36
1443
原创 whistle代理
定位线上问题的方式之一,可以使用代理到本地调试。安装whislte安装nodebrew install node安装whistlenpm install whistle -g --registry=https://registry.npm.taobao.org添加环境变量cancanliu@cancanliu ~ % vim ~/.bash_profileexport PATH=$PATH:/Users/cancanliu/.npm-global/bin:$PATH使环境变量永久生
2021-12-17 16:28:02
985
原创 2.Map-merge方法
package com.enterprise.map;import com.google.common.collect.Lists;import com.google.common.collect.Maps;import lombok.extern.slf4j.Slf4j;import java.util.List;import java.util.Map;/** * 如果map中KEY=1存在,返回test方法的值,并覆盖KEY=1对应的VALUE,如果KEY不存在,就把KEY=1对
2021-12-15 19:49:34
222
原创 1.Map-computer方法
package com.enterprise.map;import com.google.common.collect.Lists;import com.google.common.collect.Maps;import lombok.extern.slf4j.Slf4j;import java.util.List;import java.util.Map;@Slf4jpublic class MapComputer { public static void main(Stri
2021-12-15 19:49:01
801
原创 exist关键字
pu和su表根据id和a进行匹配,返回pu表有而su表的数据SELECT * FROM pu WHERE NOT EXISTS ( SELECT 1 FROM su WHERE su.id = pu.id AND su.a = pu.a)
2021-12-15 15:10:50
185
原创 Guava-Table
import com.google.common.collect.Table;import com.google.common.collect.TreeBasedTable;import lombok.extern.slf4j.Slf4j;import java.util.Collection;import java.util.Map;import java.util.Set;@Slf4jpublic class GuavaTable { /** * table使用场景
2021-12-10 19:28:34
239
原创 接口和抽象类
接口和抽象类的使用动机不同,从而决定是使用接口还是使用抽象类使用抽象类是为了代码的复用,使用接口是为了实现多态,当不确定使用接口还是使用抽象类时,就从使用目的出发决定,提高代码复用性就是用抽象类,想实现多态就是用接口。使用抽象类的目的是抽离重复代码。使用接口类的目的是实现多态。...
2021-12-09 19:50:24
195
原创 8.泛型继承和实现
public class Test{ public static void main(String[] args) { }}class Father<T>{}interface ARB<E>{}class child<T,E> extends Father<T> implements ARB<E>{}
2021-12-09 19:49:54
96
apollo1.9.0服务端.zip
2021-08-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人