- 博客(3)
- 问答 (1)
- 收藏
- 关注
原创 equal和hashcode、== 的理解和区别
1、hashCode()和equals()的作用是什么?hashCode()和equals()的作用其实是一样的,目的都是为了再java里面比较两个对象是否相等一致2、hashCode()和equals()的区别是什么?equals()既然已经实现比较两个对象的功能了,为什么还需要hashCode()呢?因为重写的equals()里一般比较的较为全面和复杂(它会对这个对象内所以成员变量一一进行比较),这样效率很低,而通过hashCode()对比,则只要生成一个hash值就能比较了,效率很高。
2023-06-16 11:54:35 75 1
原创 为什么使用InnoDB而不用MyISAM
5: MyISAM不支持,而InnoDB支持MVCC 可以看作是行级锁的一个升级,可以有效减少加锁操作,提高性能。这个读是指的快照读,而不是当前读,当前读是一种加锁操作,是悲观锁 1.什么是当前读?它读取的数据库记录,都是当前最新的版本,会对当前读取的数据进行加锁,防止其他事务修改数据。快照读的实现是基于多版本并发控制,即MVCC,既然是多版本,那么快照读读到的数据不一定是当前最新的数据,有可能是之前历史版本的数据。INNODB会支持一些关系数据库的高级功能,如事务功能和行级锁,MYISAM不支持。
2023-06-01 14:50:35 230
原创 浅谈java锁机制
与synchronized不同的是,Lock锁是纯Java实现的,与底层的JVM无关。在java.util.concurrent.locks包中有很多Lock的实现类,常用的有ReentrantLock、ReadWriteLock(实现类ReentrantReadWriteLock),其实现都依赖java.util.concurrent.AbstractQueuedSynchronizer类(简称AQS)Lock。
2023-05-31 18:31:21 77 1
空空如也
Spring Boot项目启动遇到这种问题该怎么解决?
2022-07-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人