自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HashMap之Hash碰撞

详细理解了Hash碰撞及处理方法为什么会出现hash碰撞在hash算法下,假设两个输入串的值不同,但是得到的hash值相同, 即会产生hash碰撞一个很简单的例子:假设你自己设计了一个计算hash的算法toHashValue(String). 是取的输入值的Unicode编码值(当然实际的情况会比这复杂很多很多)那么 toHashValue('A'+'D') 得到的unicode 与toHashValue('B'+'C') 相等. 所以产生了hash碰撞.因为AD跟BC我存的...

2020-10-22 10:16:07 2097 1

原创 关于JAVA的垃圾回收机制

抛转引玉最近在看一些高级JAVA需要了解的东西,特地去了解了这个JVM的回收机制,因为我以前面试的时候被面试官问过有没有手动GC过其实这个东西当初开始学习JAVA的时候多多少少都有了解过, 但是也只是了解而已了,这不,看到优秀的文章,希望可以提升一下自己JVM的回收机制分为两块, 一块是垃圾标记, 一块是垃圾收集很好理解, 标记是为了能准确指出哪些是需要回收的内存而哪些是该存活的内存. 收集才是最后的手段垃圾标记分为两种1.引用计数法引用计数法就是给对象中添加一个引用计数器.

2020-10-13 10:14:48 144

原创 高并发秒杀系统思路 -- 队列

今天看了篇大佬的文章, 一个比较基础的高并发的代码, 跟以前学习是看到的生产者消费者的模式差不多, 后来想了下, 高并发的场景下用队列来做应该才是最优解(个人拙见), 于是又到处搜了下关于使用队列的相关代码.思路上简单来说,就是在请求的时候,将这个请求的对象加入队列内, 然后在多线程的处理方法内, 从队列里pop出来执行对应的业务操作即可.大佬的文章思路清晰明了,记录一下. 自我提升-------------------------------侵删----------------...

2020-10-12 11:14:33 211

原创 Mybatis的三种执行器

转载大佬的文章Mybatis批量提交的时候可以选择几种执行器,每种执行器的不同之处在于1. SIMPLE 单条编译, 单条设置参数, 单条执行SQL2. BATCH 只编译一次, 单条设置参数, 统一执行SQL3. REUSE 只编译一次, 单条设置参数, 单条执行SQL---------------------------------侵删------------------------------------https://blog.csdn.net/zon...

2020-10-12 10:13:21 628

原创 Springboot + dubbo + zookeeper 整合踩坑记录

闲来无事想练手一下springboot+dubbo+zk,因为公司的架构不支持(比较low,RPC用的还是ESB 这种比较年久的东西了)所以只好自己本地整下,以后工作要用到也不至于踩坑,提前踩了.搭建过程参考了网上很多文章,磕磕绊绊,最后还是搭建成功了,看了数篇文章后,最推荐的还是这篇,讲的比较详细,但是实际搭建起来还是有出入的地方, 后面一边填坑一边说参考大佬文章:https://www.jianshu.com/p/6acfb2398bf4---------------------..

2020-09-15 17:12:02 640

原创 SQL in操作超过1000条后异常处理 maximum number of expressions in a list is 1000

注:本文不涉及效率处理,毕竟我跑的定时任务,1秒执行完毕跟10秒执行完毕对我来说没啥关系起因, 很久前写了个定时更新的代码, 但是一直相安无事, 到前几天突然收到预警, 说超过了1000条数据,抛异常了,就顺手修复了下.原语句update tableA set key = 'updateKey' where id in( <foreach collection="list" item="id" separator=","> #{id} </fo

2020-08-17 14:39:22 1012

原创 druid monitor配置 -- springBoot项目

起因:有一天同事的项目连接池突然爆了.起初是以为有长时执行的SQL,但是排查了一下DB,发现根本没有这种sql.然后在想会不会是调用第三方的接口,超时导致挂起,没有关闭? 调用了一下代码,发现几个第三方的接口也很正常.眼看着同事的脑袋上头发越来越少,他终于想到了用监控的这种方法, 于是请教了一下公司的大佬.配置了一下,快速方便上手.效果立竿见影,问题也排查到了. 原来是有个BatchInsert的接口造成的.这种大批量的提交,同事用的是sqlSessionFactory的形式,按批次提交的.

2020-06-12 12:12:11 1244

原创 二叉树遍历练习

最近在乐扣做题,做到一道关于遍历二叉树的,因为我本身也没接触过二叉树, 知道有这么个东西,但是只知道概念不知道相关代码,实操起来跟智障一样.然后看了一下题解,发现思路非常清晰, 照着思路试着敲了一下,感觉挺有帮助的,记录一下吧.-------------------------------------------//树形结构实体public class TreeNode { Integer val; TreeNode left; TreeNode righ..

2020-05-13 17:52:45 541

原创 JAVA 二分查询练习

其实如果只是为了了解一下的话, 倒也不用做这个练习,Arrays.binarySearch() 这个工具包都直接提供方法了.但是还是为了多一点算法的知识,不要虚度光阴.--------------------------------------------------------------------------------------------------------------------------------------------首先搞清楚啥叫二分查询其实就是猜数字游.

2020-05-12 14:42:50 160

原创 记录一次update全表Commit后回滚的操作

起因:上周在做一个功能测试, 写完之后想从数据库里改点数据做测试使用.由于我平时update语句都是先F8执行,再F10确认的. 倒也一直相安无事,加上如果你不加条件的话,pl/sql会提示你是否更新全表.久而久之,我也习惯了由工具来提醒我是否该做次操作(坏习惯,必须得改).然后偶然间看到了我的测试同事,在操作数据库时,都是在操作语句下面写上commit;我看到了之后就一直惦记着.倒也不是说不知道这个东西,只是平时基本不写这个,发版时提交脚本的时候,也不让写commit,公司执行的系统会..

2020-05-11 10:41:44 1403

空空如也

空空如也

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

TA关注的人

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