- 博客(7)
- 资源 (14)
- 收藏
- 关注
原创 面试官:Object类有哪些方法?
方法介绍1.getClass()final,native方法,获得运行时类型。2.hashCode()hashCode()方法主要用于hash表,比如HashMap,当集合要添加元素时,大致按如下步骤:先调用该元素的hashCode()方法获取hashCode,hashCode对数组取模定位到它应该放置的物理位置如果这个位置上没有元素,就直接存储在这个位置上如果这个位置上已经有元素,就调用equals()方法进行比较,相同的话就更新,不相同的话放到链表后面所以重写equals()方法时.
2021-02-28 20:01:33 556
原创 并发容器:读多写少?试试CopyOnWriteArrayList
介绍我原来遇到这样一种场景,我们将一些配置信息存在数据库中,但这种配置信息访问的频率非常高,如果每次从数据库中查询,会明显降低效率。后来我就在每次启动项目的时候把数据库中的数据加载到本地缓存中,当配置发生变化时同步更新缓存本地缓存结构如下Map<String, List<Integer>> cache = new ConcurrentHashMap<>();这个缓存有什么问题呢?如果这个List的实现类是ArrayList,那么可能会发生线程安全问题如果L.
2021-02-22 22:35:08 1870 2
原创 并发理论:如何优雅的停止线程?
使用stop方法调用stop方法,会让正在运行的线程直接中止,有可能会让一些清理性的工作得不到完成。并且stop已经被标记为废弃的方法,不建议使用使用标志位public class RunTask { private volatile boolean stopFlag; private Thread taskThread; public void start() { taskThread = new Thread(() -> { .
2021-02-20 13:23:42 337
原创 并发原子类:都有了AtomicLong,为什么还要提供LongAdder?
计数用synchronized,AtomicLong,LongAdder在很多系统中都用到了计数的功能,那么计数我们应该用synchronized,AtomicLong,LongAdder中的哪一个呢?来跑个例子public class CountTest { private int count = 0; @Test public void startCompare() { compareDetail(1, 100 * 10000); .
2021-02-16 17:29:15 450
原创 微服务(Dubbo,Spring Cloud)如何单测?
前言测试框架有很多,Junit,EasyMock,PowerMock,TestNG,DBUnit等。建议重要的业务流程写单测,使用Junit,EasyMock测试框架假如业务类为A,单测类的命名方式为ATest,ATest类和A类的包结构保持一致,测试的方法名保持一致IDEA快速生成Test类所在类按快捷键Win:Ctrl + Shift + TMac:⇧ + command + T选中要单测的方法点击OK即可Junit不要简单的打印结果,最后写上期望的断言,如assertTru
2021-02-06 21:10:44 619
原创 面试官:MySQL是如何解决幻读的?
介绍众所周知,在不同隔离级别下,会发生如下问题。√ 为会发生,×为不会发生隔离级别脏读不可重复读幻读read uncommitted(未提交读)√√√read committed(提交读)×√√repeatable read(可重复读)××√serializable (可串行化)×××不知道这些问题是如何产生的,可以看如下文章《面试官:脏读,不可重复读,幻读是如何发生的?》那么mysql是如何避免脏读,不可重复度,幻读的?其实.
2021-02-06 21:06:58 2750 2
原创 Redis源码解析:单线程的Redis为什么能支持10w+的QPS?
单线程为什么能支持10w+的QPS?我们经常听到Redis是一个单线程程序。准确的说Redis是一个多线程程序,只不过请求处理的部分是用一个线程来实现的。Redis是如何用单线程来实现每秒10w+的QPS的呢?使用IO多路复用非CPU密集型任务纯内存操作只用一个线程怎么来处理多个客户端的连接呢?这就不得不提IO多路复用技术,即Java中的NIO。当我们使用阻塞IO(Java中的BIO),调用read函数,传入参数n,表示读取n个字节后线程才会返回,不然就一直阻塞。write方法一般不会.
2021-02-04 22:23:38 2592
mybatis-generator-core-1.3.5.jar
2019-08-15
将doc文件批量转为docx文件,用python将doc文件批量转为docx文件
2017-12-28
Spring MVC学习指南
2017-10-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人