- 博客(11)
- 资源 (1)
- 收藏
- 关注
转载 context:annotation-config 和 context:component-scan的区别
<context:annotation-config> 和 <context:component-scan>的区别<context:annotation-config> 是用于激活那些已经在spring容器里注册过的bean(无论是通过xml的方式还是通过package sanning的方式)上面的注解。<context:component-sca...
2019-01-08 11:22:05
451
转载 缓存穿透,缓存击穿,缓存雪崩解决方案分析
缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。缓存雪崩缓存雪崩是指在我们设置缓存时采用了相同的过期时间,导致缓存在某一时刻同时失效,请求全部转发到D...
2018-09-07 10:35:58
172
原创 Mysql分表查询的简单实现
第一种:Mysql MERGE引擎分表第二种:union第三种:select t1.*,t2.*,t3.* from t1,t2,t3 where t1.user_id =? and t2.user_id =? and t3.user_id=?;
2018-09-07 10:23:46
3090
转载 JVM性能调优监控工具
转自:https://blog.youkuaiyun.com/shenzhen206/article/details/54618354一、jps(Java Virtual Machine Process Status Tool) 基础工具 实际中这是最常用的命令,下面要介绍的小工具更多的都是先要使用jps查看出当前有哪些Java进程,获取该Java进程的id后再对该进程进行处理。二、...
2018-09-06 13:52:11
208
转载 java中类的加载顺序介绍(ClassLoader)
类的加载过程 一个java文件从被加载到被卸载这个生命过程,总共要经历5个阶段,JVM将类加载过程分为: 加载->链接(验证+准备+解析)->初始化(使用前的准备)->使用->卸载...
2018-09-04 21:41:33
190
转载 volatile有什么用途?
Volatile 变量具有 synchronized 的可见性特性,但是不具备原子性。这就是说线程能够自动发现 volatile 变量的最新值。
2018-09-04 19:49:58
744
转载 面试题:手写一个线程安全的单例模式
转自:http://cantellow.iteye.com/blog/838473第五种(静态内部类)public class Singleton { private static class SingletonHolder { private static final Singleton INSTANCE = new Singleton(); } priv...
2018-09-04 19:45:12
4031
原创 什么是反射,那些场景使用反射?Class.forname和ClassLoader.loadClass有什么区别?
一、Java反射:Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性。反射应用场景: 1.跨网络的远程平台创建和运行对象的能力,即远程方法调用(RMI) 2.逆向工程 3.基于注解实现的框架二、区别:反射中Class.forName()和ClassLoade...
2018-09-03 20:43:12
668
原创 Java基础面试题2018-08-29
一、hashmap、hashtble、concurrenthashmap的区别以及实现原理 1.hashmap是数组+链表的数据结构,hashmap线程不安全,因为可能会出现多个线程同时对hashmap的容量进行计算,或者是同时放入相同的key,造成值被覆盖。 2.hashtable采用synchronized同步锁,保证同一时间只有一个线程能进行操作,但是锁的同时,其它...
2018-08-29 11:25:03
252
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人