自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 问答 (1)
  • 收藏
  • 关注

原创 AQS笔记

ReentrantLock lock = new ReentrantLock();try{ //加锁 lock.lock(); //执行业务相关代码 }catch(Excetion e){ }finally{ //释放锁 lock.unlock();}ReentrantLock 内置了一个抽象类AbstractQueuedSynchronizer,公平锁类FairSync,非公平锁类NonfairSync用来执行操作,构造方法/** * Creates an ins

2021-09-13 22:25:55 72

原创 HashMap1.8笔记

一 hash()static final int hash(Object key) { int h; return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16); }校验key是否为null1)如果为null则返回0,这也就是为什么hashMap中只能有一个为null的key.2)不为null,调用Object的hashCode,将返回值带符号右移16位再与返回值进行 ^(按位

2020-11-12 23:00:34 73

原创 为什么wait方法要在while循环中,而不是if判断

最主要的原因是休眠之后的线程被唤醒之后接着执行休眠后的代码,这时候的数据可能被其他线程修改了,所以说可能会造成异常.但是while循环在唤醒之后因为有while关键字的存在会再次检查是否满足条件.从而保证每次条件都是满足的.具体代码参考:https://blog.csdn.net/HD243608836/article/details/97754956...

2020-10-09 14:22:21 400

原创 手工注册rabbitmq的消费者

正常的配置rabbitmq消费者@Bean SimpleMessageListenerContainer createSimpleMessageListenerContainer(Queue omsQueue,ConnectionFactory connectionFactory,RabbitTransactionManager rabbitProducerTxManager,CommonMessageConsumer commonMessageConsumer){ SimpleM

2020-08-26 15:01:03 894

原创 HashMap源码笔记

类属性/** * The next size value at which to resize (capacity * load factor). * 要调整大小的下一个大小值(容量*负载系数)既扩容之后集合的长度 * * @serial */ // (The javadoc description is true upon serialization. // Additionally, if the table array has not

2020-07-21 09:31:32 102

原创 记录一下mybatis的坑,话不多说先贴代码

insert into 表名 ( 字段名1,2,3,4,5,6,7,8,9 ) values ( 值1,2,3,4,5,6,7,8,9 ) 先说明下这个表是联合主键,所以我把所有字段全部都设置了值的, 这里要说的是如果没有useGeneratedKeys=”false”这个属性,那么...

2018-08-16 18:23:19 151

空空如也

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

TA关注的人

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