- 博客(27)
- 收藏
- 关注
原创 Failed to configure a DataSource: ‘url‘ 已配置数据库URL 仍然报错 问题处理
Failed to configure a DataSource: 'url' 已配置数据库URL 仍然报错 问题处理
2023-01-04 17:06:20 350 1
原创 @Async注解 异步失效 注入自身代理类调用异步 启动报错 问题处理
【代码】@Async注解 异步失效 注入自身代理类调用异步 启动报错 问题处理。
2022-12-30 16:55:16 319
原创 Springboot 获取IOC容器内Bean BeanUtils工具类 代码示例
【代码】Springboot 获取IOC容器内Bean BeanUtils工具类 代码示例。
2022-12-30 16:31:36 203
原创 Springboot 基于 StringRedisTemplate的缓存工具类 RedisUtils 代码示例
Springboot 基于 StringRedisTemplate的缓存工具类 RedisUtils 代码示例
2022-12-30 16:28:17 366
原创 Springboot alibaba fastjson 序列化NULL值 配置类 代码示例
【代码】Springboot alibaba fastjson 序列化NULL值 配置类 代码示例。
2022-12-30 15:33:38 146
原创 基于Mysql理解 Java RestHighLevelClient ES查询语句
//起手构建请求SearchRequest request = new SearchRequest();request常用操作:指定索引,可传入多个索引,支持通配符*request.indices(String[] tables) 等同于 select xx from table1,table2…//构建查询SearchSourceBuilder builder = new SearchSourceBuilder();builder常用操作:分页查询
2022-05-06 13:43:36 1223
原创 JUC笔记
1 什么是JUC1.1 进程与线程线程是进程的执行单位,一个进程相当于一个服务,每个线程去执行任务1.2 线程状态NEW 新建RUNNABLE 准备就绪BLOCKED 阻塞WAITING 不见不散TIMED_WAITING 过时不候TERMINATED 终结1.3 wait/sleep区别wait是Object对象实例方法、sleep是线程Thread方法wait会释放锁,调用前提是该线程持有锁、sleep不会释放锁,也需要不占有锁才能调用。都可被interrupted方法中断
2022-04-20 17:51:53 216
原创 大数据导入Mysql踩坑
大数据导入Mysql踩坑涉及技术简述踩坑及处理后记涉及技术简述微服务架构,k8s部署管理,大数据导入数据库的功能涉及两个服务,一个负责csv文件的定时读取,一个负责文本的处理及入库。读取服务会将文件内容按OLT粒度涉及的硬件消息,分为约5000条5~10kb的消息发送到kafka指定Topic的同一个分片,此项目分区pattern只设置了2个。均匀分发消息。处理入库服务则是从消息队列读取消息。然后线程池并发处理。踩坑及处理我们的目的是,尽量快速处理约1.5GB的csv文件,具体到数据库的reco
2022-03-14 20:08:49 2870
原创 CopyOnWriteArrayList源码(一)
CopyOnWriteArrayList是ArrayList的线程安全版,适用于读多写少的并发场景。因为底层是创建新的数组,然后更新引用地址,所以没有扩容相关方法1. CopyOnWriteArrayList类图2. 基础属性序列化private static final long serialVersionUID = 8673264195747942595L;禁止序列化的可重入锁//transient禁止序列化final transient ReentrantLock lo.
2021-08-16 14:07:42 123
原创 ArrayList源码详解
1. 类图2. 基本属性 /** * 默认容量 10 */ private static final int DEFAULT_CAPACITY = 10; /** * 用于空实例的共享空数组实例。 */ private static final Object[] EMPTY_ELEMENTDATA = {}; /** * * 默认容量(10)的空数组,添加第一个元素时,这个数组的容量会扩展为10。
2021-08-16 11:21:59 402
原创 Spring框架 基于注解的 AOP 实现
概述Spring AOP 是基于动态代理模式实现,采用两种,JDK动态代理、CGLIB的动态代理。使用 JDK 的 Proxy 实现代理,要求目标类与代理类实现相同的接口。若目标类不存在接口,则无法使用该方式实现。对于无接口的类,要为其创建动态代理,就要使用 CGLIB 来实现。CGLIB 代理的生成原理是生成目标类的子类,而子类是增强过的,这个子类对象就是代理对象。所以使用 CGLIB 生成动态代理,要求目标类必须能够被继承,即不能是 final 的类。AspectJ是Eclipse的一个开源项目
2021-08-09 00:06:44 954 2
原创 JVM垃圾收集器
1. Serial(新生代收集器)单线程, 新生代标记-复制算法额外内存最小,因为是单线程,在内核数少的情况下,效率很高。运行于客户端的JVM首选2. ParNew(新生代收集器)多线程并行版Serial,标记-复制算法多核心处理器下效率优异,单核处理器环境下不如Serial。JDK7之前,服务端新生代首选垃圾回收器。可以与老年代:CMS回收器配合使用3. Parallel Scavenge(新生代收集器)并行收集的多线程收集器,标记-复制算法侧重于吞吐量区别于ParNew收集器的一
2021-08-04 19:31:42 99
原创 Mysql实现Oracle递归查询,Navicat创建函数踩坑
前些天负责了公司代码的迁移工作,原先的项目使用的是Oracle新的项目使用的是Mysql数据迁移使用的是Navicat客户端,但是遇到了个棘手的问题,就是函数的迁移,我在Navicat上没有看到。没办法, 只能自己手写。创建函数语句上来创建函数语句就遇上了一个坑大概如下,参数有两个,一个是decimal 一个是varchar类型,CREATE FUNCTION `A`( USER_ID DECIMAL, IS_DEPT_LEVEL VARCHAR ( 255 ) ) RETURNS
2020-08-26 17:04:23 537
原创 计算机位运算的加减乘除原理
计算机位运算的加减乘除原理最近在B站看了狂神的【狂神说】最通俗易懂的计算机底层教学,二进制到汇编学习!记下笔记梳理下、免得看完就忘以下皆为个人理解,请自行斟酌,如果有错误欢迎指出详情可转去看视频有符号数及无符号数即是否带正负的数字最高符号位为0为正数最高符号位为1为负数原码反码补码存储在计算机里的二进制码无符号数反码与原码相同补码与原码也相同如 12 八进制为 0000 1100原码 0000 1100反码 0000 1100补码 0000 1100有符号数原码即为
2020-07-07 07:27:11 479
原创 关于请求转发与重定向区别及应用场景
关于请求转发与重定向区别及应用场景做web项目的安全退出后跳转到登录页面功能突然想到请求转发与重定向之间的区别还有应用场景的问题感觉自己混淆概念了、特此记一下;定义请求转发浏览器向服务器发起仅一次请求、服务器可以多次转发这个请求,寻找同一web程序下的资源然后将结果返回给浏览器举例说明劫匪朝要张三100W(request),不管他是朝几个人、怎么借的、(内部多次转发)...
2020-03-28 18:16:44 1214
原创 关于Office Word里如何在方框里打字
前阵子基友要填一个社保相关的电子文档,其中社会保险登记码要填入方框里,但是嘞,坑的是,那个登记表电子文档,方框是属于图片。。自行摸索了一下,发现还是很简单的。记录一下。我用的Word 是2016 家庭版的1首先的当然是输入文本啦,输入后选中单个文本,原谅我,我真不知道咋一起给加框奥。2在字体选项下,有个圆圈里的“字”——带圈字符 选项 ,在选中文本的情况下,点击这个选项。3这时候弹...
2019-09-18 15:54:45 8677
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人