魔豆IT-一个程序员的个人博客魔豆IT

【今日观点】 Mybatis进阶

typora-copy-images-to: img 一.接口代理方式实现Dao 1.1 代理开发方式介绍 ​ 采用 Mybatis 的代理开发方式实现 DAO 层的开发,这种方式是我们后面进入企业的主流。 Mapper 接口开发方法只需要...

最新发布

后端

hashCode与equals的区别与联系

admin阅读(11)评论(0)赞(0)

一、equals方法的作用 1、默认情况(没有覆盖equals方法)下equals方法都是调用Object类的equals方法,而Object的equals方法主要用于判断对象的内存地址引用是不是同一个地址(是不是同一个对象)。 2 、要是...

后端

三线程按顺序交替打印ABC的四种方法

admin阅读(19)评论(0)赞(0)

建立三个线程A、B、C,A线程打印10次字母A,B线程打印10次字母B,C线程打印10次字母C,但是要求三个线程同时运行,并且实现交替打印,即按照ABCABCABC的顺序打印。 一、Synchronized同步法 1、基本思路 使用同步块和...

后端

Java中List排序的3种方法!

admin阅读(24)评论(0)赞(1)

在某些特殊的场景下,我们需要在 Java 程序中对 List 集合进行排序操作。比如从第三方接口中获取所有用户的列表,但列表默认是以用户编号从小到大进行排序的,而我们的系统需要按照用户的年龄从大到小进行排序,这个时候,我们就需要对 List...

后端

三个线程交替顺序打印ABC

admin阅读(20)评论(0)赞(0)

题目描述 建立三个线程A、B、C,A线程打印10次字母A,B线程打印10次字母B,C线程打印10次字母C,但是要求三个线程同时运行,并且实现交替打印,即按照ABCABCABC的顺序打印。 5种方法 使用synchronized, wait和...

后端

一文带你理解Java中Lock的实现原理

admin阅读(26)评论(0)赞(0)

简介: 当多个线程需要访问某个公共资源的时候,我们知道需要通过加锁来保证资源的访问不会出问题。java提供了两种方式来加锁,一种是关键字:synchronized,一种是concurrent包下的lock锁。 当多个线程需要访问某个公共资源...

后端

面试官:聊聊索引失效?失效的原因是什么?

admin阅读(37)评论(0)赞(0)

在工作中,如果我们想提高一条语句查询速度,通常都会想对字段建立索引。 但是索引并不是万能的。建立了索引,并不意味着任何查询语句都能走索引扫描。 稍不注意,可能你写的查询语句是会导致索引失效,从而走了全表扫描,虽然查询的结果没问题,但是查询的...

后端

sleep() 和 wait() 的区别分析

admin阅读(68)评论(0)赞(0)

sleep() 和 wait() 的区别 sleep是线程中的方法,但是wait是Object中的方法。 sleep方法不会释放锁,但是wait会释放,而且会加入到等待队列中。 sleep方法不依赖于同步器synchronized,但是wa...

后端

并发编程的锁机制:synchronized和lock

admin阅读(90)评论(0)赞(1)

1. 锁的种类 锁的种类挺多,包括:自旋锁、自旋锁的其他种类、阻塞锁、可重入锁、读写锁、互斥锁、悲观锁、乐观锁、公平锁、可重入锁等等,其余就不列出了。我们这边重点看如下几种:可重入锁、读写锁、可中断锁、公平锁。 1.1 可重入锁 如果锁具备...