自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 java.lang.IncompatibleClassChangeError: Found class com.*, but interface was expect

java异常:Handler dispatch failed; nested exception is java.lang.IncompatibleClassChangeError: Found class com.*, but interface was expected原因:版本不一致导致的冲突修复:统一版本号

2021-10-26 16:49:43 1348

原创 2021-06-24

mysql的varchar长度MySQL的varchar定义长度到底是字节还是字符varchar存储规则:4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节)5.0版本以上,varchar(20),指的是20字符,无论存放的是数字、字母还是UTF8汉字(每个汉字3字节),都可以存放20个,最大大小是65532字节Mysql4中最大也不过是20个字节,但是Mysql5根据编码不同,存储大小也不同。...

2021-06-24 14:22:05 121

原创 Cannot find current proxy: Set ‘exposeProxy‘ property on Advised to ‘true‘ to make it available.

当使用AopContext.currentProxy()代理当前service的时候,报Cannot find current proxy: Set 'exposeProxy' property on Advised to 'true' to make it available.解决方案:1、在代理的类上添加注解@EnableAspectJAutoProxy(proxyTargetClass = true, exposeProxy = true)2、在xml配置文件上添加&lt.

2021-04-16 16:32:32 4281

原创 mysql操作-以及性能记录

//30w条数据 create 耗时0.04screate table feature_record_hist_200901 like feature_record;//空表rename 耗时0.039rename table feature_record_hist_200901 to feature_record_hist_20200901;//30w的数据 insert select 耗时3.32sINSERT into feature_record_hist_20200901 SELEC

2020-09-01 14:22:17 157

原创 kafka时间轮-轮询方式

时间轮kafka中存在大量的延时操作,比如延时生产,延时消费,延时删除等。kafka并没有使用JDK自带的Timer和DelayQuene来实现延时的功能,而是基于时间轮的概念自定义实现了一个用于延时操作的定时器(SystemTimer)。复杂度jdk的Timer和DelayQuene的插入和删除的复杂度为O(nlogn)根据源码分析,Timer底层使用的TaskQueue,内部实现使用的是最小堆kafka使用的时间轮接近于O(1),不仅仅是kafka采用了时间轮,在 Netty,Akka,

2020-06-12 19:10:49 2666

原创 @FeignClient RequestParam.value() was empty on parameter 0

使用@FeignClient注解的时候,如果接口方法中参数没有指明,就会报RequestParam.value() was empty on parameter 0Result methord(@RequestParam String param) VSResult methord(@RequestParam("param") String param)idea可以通过如下设置解决...

2020-06-12 17:10:24 5262 4

原创 Kafka常用命令

一、单节点1、启动kafakabin/kafka-server-start.sh config/server.properties &2、创建主题,分区bin/kafka-topics.sh --zookeeper localhost:2181/kafka --create --topic topic-demo --replication-factor 2 --pa...

2020-04-13 13:09:32 195

原创 Lombak ERROR

基于gradle,使用lombak自动配置,代码中没有错误,结果在编译的时候发现报错如下:Warning:(18, 8) java: lombok.javac.apt.LombokProcessor could not be initialized. Lombok will not run during this compilation: java.lang.RuntimeException...

2020-04-02 14:28:46 514

原创 线程池

一、java线程池的参数 1. corePoolSize:指定了线程池中的线程数量。 2. maximumPoolSize:指定了线程池中的最大线程数量。 3. keepAliveTime:当前线程池数量超过 corePoolSize 时,多余的空闲线程的存活时间,即多 次时间内会被销毁。 4. unit:keepAliveTime 的单位。 5. wo...

2019-11-18 15:09:55 153

原创 重入锁synchroized,reentrantlock

重入锁:在同一个线程内可以对同一个资源锁多次,且都可以上锁成功。能够重入的锁有synchroized和reentrantLock一、synchroizedpublic class AddNum { private Integer num = 9; public int add(int a){ synchronized (num){ ...

2019-11-17 22:16:36 174

原创 十个线程执行1+2+3+4+...+n

问题:十个线程执行1+2+3+4+...+n1、方法一使用volatileimport java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class AddNum { public static void main(String[] args) { ...

2019-11-16 22:37:08 316

原创 IO原理

BIO:阻塞同步IONIO:同步非阻塞IOAIO:异步非阻塞IOJDK1.6之前都是使用BIO和NIO,JDK1.7之后AIO(NIO 2.0)得到了应用一、阻塞IO(BIO)阻塞IO是最传统的一种IO,在读写数据的时候会发生阻塞现象,当用户线程发出IO请求后,内核会去检查数据是否已经准备就绪,如果数据没有就绪,就会出现阻塞现象,用户线程会交出CPU。当数据准备就绪后,内核则将...

2019-11-16 21:48:21 404

原创 concat和group_concat --Mysql

1、concat和group_concat都是用在sql语句中做拼接使用的,但是两者使用的方式不尽相同,concat是针对以行数据做的拼接,而group_concat是针对列做的数据拼接,且group_concat自动生成逗号。2、concat的使用结果3、group_concat的使用:结果:而且group_concat一般和group by 结合使用比较多...

2019-10-22 10:33:47 827

原创 mybais-show slave(master) status

1、现在的数据库一般都在适用主从库,由于某个时段,数据库压力比较大就会导致从库出现延迟,从库查询的数据不准确。所以在做从库查询的时候,需要判断当前从库的延迟时间。2、在数据库命令中,我们可以执行show slave status 查看当前mysql从库的状态。3、在项目中使用mybatismapper.java/** * 查询从库状态 * @return...

2019-10-18 15:09:04 356

原创 sleep(),wait(),join(),yield(),suspend(),resume()方法

1、sleep()在Thread.class中对其描述为:/** * Causes the currently executing thread to sleep (temporarily cease * execution) for the specified number of milliseconds, subject to * the precisi...

2019-09-20 23:54:14 364

原创 RabbitMq:java.lang.NoClassDefFoundError: org/springframework/util/backoff/BackOff

一、报错内容Caused by: java.lang.ClassNotFoundException: org.springframework.util.backoff.BackOff at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(C...

2019-09-18 13:28:04 1604

原创 JVM-GC 判断对象是否存活

一、判断对象是否存活的方法1、引用计数法 引用计数法是一个比价基础的判断方法,为对象配置一个计数器,每出现一个对该对象引用的地方,则计数器加一,每有一个引用失效,则计数器减一。当计数器的累计值为0的时候,表示该对象没有地方引用了,已经死亡。 引用计数法的有点事效率比较高,实现比交简单;缺点是很难解决对象与对象之间的相互引用。2、根搜索算法 ...

2019-09-15 12:14:14 437

原创 Spring Bean的生命周期

一、整体流程1、实例化BeanPostFactoryProcessor2、执行BeanPostFactoryProcessor 的 postProcessorBeanFactory3、实例化BeanPostProcessor4、实例化InstantiationAwareBeanPostProcessor5、执行InstantiationAwareBeanPostProcesso...

2019-09-13 17:47:15 202

原创 单向链表反转

一、链表链表的结构是一种非线性的数据结构,优点是可以充分使用空间,插入和删除节点的时候不需要遍历节点速度较快,但是由于其特性在查找的时候遍历速度比较慢。每一个节点在存储自己的数据的时候,还存储下一个节点的物理位置。可抽象为:二、链表反转1、新增物理存储反转如图:1 2 3 4 null 第一步:生成一个新的节点11 第二步...

2019-09-05 15:10:13 172

原创 MAC安装JDK1.8

一、资源下载jdk1.8下载:链接:https://pan.baidu.com/s/1KkyIzv3gl4ScSANGn9nSpQ 密码:jtih安装:双击,continue就可以二、环境配置1、查看jdk的安装位置/usr/libexec/java_home -V$ /usr/libexec/java_home -VMatching Java Virtual M...

2019-09-03 23:06:40 405

原创 Redis分布式锁

REDIS分布式锁一、声明分布式锁有多种,常用的有redis分布式锁和zookeeper分布式锁,这里描述redis分布式锁。二、什么是分布式锁分布式锁用在分布式系统中,分布式系统即单个系统多个部署,通过负载均衡,实现系统快速稳定相应。在我们对同一条数据进行修改的时候,极有可能造成脏数据。分布式锁的作用就是保证数据的接近原子性操作,简要说就是保证多个系统中的某一方法同一时间只能运行...

2019-09-03 14:25:47 1284

原创 gitlab规范提交代码

一、背景 程序员自我约束能力较差,并且在同一个项目中对其他人所作代码不甚了解,极容易出现没有提示,重复代码等问题。二、解决方法 gitlab使用钩子对用户提交的代码进行校验 文件:链接: https://pan.baidu.com/s/12Bs4_6hwYmTEp4sFxzTk4g 提取码: aitw 使用方式:1、找到项目在...

2019-08-20 17:00:37 1394

原创 SpringBoot框架搭建-mock(java)

一、什么是mock,mock作用 mock是一种测试手段,通过用来模拟不可控或者比较复杂的的请求结果(比如第三方的请求),通过请求参数控制,来达到自己期望的结果。通俗得讲就是通过参数控制接口返回的是自己想要的“伪数据”。二、mock服务设计 网上大都是通过js,jQuery实现的mock,这里重点说明后端服务的mock-模拟第三方服务。1、设计前的分析...

2019-08-19 16:39:27 1738

原创 SpringBoot报错jdbcUrl is required with driverClassName

SpringBoot报错jdbcUrl is required with driverClassName发生问题的配置:启动项目的时候并不会报错,但是在做接口请求的时候:返回内容为:{"timestamp":"2019-08-12T08:16:41.888+0000","status":500,"error":"Internal Server Error","mess...

2019-08-12 16:28:49 2846 1

原创 Redis发布订阅原理以及java实现

一、Redis发布订阅原理 Redis的架构包括两个部分:Redis Client和Redis Server,即客户端和服务端。客户端负责向服务器端发送请求并接受来自服务器端的响应。服务器端负责处理客户端请求,例如:数据存储,获取数据,修改数据等。Redis通常用作数据库,缓存以及消息系统。发布订阅的框架其中Publisher和Subscriber为Redis Clien...

2019-08-08 15:46:39 1472

原创 对接微信服务授权功能(JAVA)

一、参考文档:微信开发文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842关于网页授权的两种scope的区别说明1、以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页2、以snsa...

2019-07-16 18:06:42 495

原创 DUBBO在Linux的测试方式

1、测试当前linux系统中是否存在该DUBBO接口(是否可以引到该DUBBO接口)telnet dubbo提供者IP:端口号例如:telnet 192.168.0.41:208802、查看当前服务可以使用的方法查看某个服务的方法列表:ls ***Service查看服务的方法的详细列表:ls -l ***Service查看服务状态列表:status -l2、测试接口...

2019-01-16 13:31:09 854

转载 DES CBC java&C#&PHP 兼容【转】

版本一javaimport org.slf4j.Logger;import org.slf4j.LoggerFactory;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;import javax.crypto.*;import javax.crypto.spec.DESKeySpec;import ja...

2018-10-30 10:08:17 238

空空如也

空空如也

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

TA关注的人

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