- 博客(14)
- 资源 (23)
- 收藏
- 关注
转载 java链表面试题
转自:http://blog.csdn.net/u010442302/article/details/51864187本文包含链表的以下内容: 1、单链表的创建和遍历 2、求单链表中节点的个数 3、查找单链表中的倒数第k个结点(剑指offer,题15) 4、查找单链表中的中间结点 5、合并两个有序的单链表,合并之后的链表依然有序【出现频率高】(剑指offer,题17) 6、单链表的反转...
2018-02-10 20:15:58 1755
转载 Java动态代理机制详解(JDK 和CGLIB,Javassist,ASM)
转自:http://blog.csdn.net/luanlouis/article/details/24589193class文件简介及加载 Java编译器编译好Java文件之后,产生.class 文件在磁盘中。这种class文件是二进制文件,内容是只有JVM虚拟机能够识别的机器码。JVM虚拟机读取字节码文件,取出二进制数据,加载到内存中,解析.class 文件内的信息,生成对应的 Cla...
2018-02-10 13:35:19 310
转载 对List集合中的元素进行排序
Collections对List集合中的数据进行排序有时候需要对集合中的元素按照一定的规则进行排序,这就需要用到Java中提供的对集合进行操作的工具类Collections,其中的sort方法先看一个简单的例子:[java] view plain copy public static void main(String[] args)
2018-02-05 18:13:03 507
转载 spring 动态代理原理
转自:http://rejoy.iteye.com/blog/1627405Java代码 package dynamic.proxy; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Proxy;
2018-02-04 14:41:21 1026
转载 jvm调优
转自 :http://uule.iteye.com/blog/2114697JVM垃圾回收与性能调优总结JVM调优的几种策略 一、JVM内存模型及垃圾收集算法 1.根据Java虚拟机规范,JVM将内存划分为:New(年轻代)Tenured(年老代)永久代(Perm) 其中New和Tenured属于堆内存,堆内存会从JVM启动参数(-Xmx:3G)指定的内
2018-02-03 17:20:59 256
转载 guava缓存
转自:http://blog.csdn.net/wangzhi291/article/details/50323989适用性 缓存在很多情况下都是非常有用的。比如,我们需要多次根据给定的输入获取值,而且该值计算或者获取的开销是非常昂贵的。 缓存和ConcurrentMap是非常相像的,但是它们也不完全一样。最根本的区别就是,ConcurrentMap会持有所有添加的
2018-02-03 17:09:20 1059
转载 图解排序算法(三)之堆排序
转自:https://www.cnblogs.com/chengxiao/p/6129630.html堆排序 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。堆 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的
2018-02-03 16:39:40 225
转载 锁降级 以保证数据的可见性
转自:https://www.jianshu.com/p/0f4a1995f57d读写锁ReentrantReadWriteLock简介ReentrantReadWriteLock是ReadWriteLock接口的实现,ReentrantReadWriteLock中有两个静态内部类:ReadLock读锁和WriteLock写锁,这两个锁实现了Lock接口,ReentrantReadWri
2018-02-03 16:37:52 488
转载 redis 缓存失效与热点key解决方案
转自:https://www.jianshu.com/p/d5a3668d4dad缓存击穿: 查询一个数据库中不存在的数据,比如商品详情,查询一个不存在的ID,每次都会访问DB,如果有人恶意破坏,很可能直接对DB造成过大地压力。缓存击穿的解决方案: 当通过某一个key去查询数据的时候,如果对应在数据库中的数据都不存在,我们将此key对应的value设置为一个默认的值,比如“NULL”,
2018-02-03 15:53:43 7554
原创 Spring事务实现过程及原理
1、Spring中事务处理的作用: Spring事务处理,是将事务处理的工作统一起来,并为事务处理提供通用的支持。 2、工作原理及实现 a、划分处理单元——IOC 由于spring解决的问题是对单个数据库进行局部事务处理的,具体的实现首相用spring中的IOC划分了事务处理单元。并且将对事务的各种配置放到了ioc容器中(设置事务管理器,设置事务
2018-02-02 11:54:30 11912 1
原创 rabbitMQ学习
消息队列优点:解耦 在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。消息系统在处理过程中间插入了一个隐含的、基于数据的接口层,两边的处理过程都要实现这一接口。这允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。冗余 有些情况下,处理数据的过程会失败。除非数据被持久化,否则将造成丢失。消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了
2018-02-02 11:08:00 319
原创 jvm理解
1、程序计数器 每个线程都有自己的计数器,用来指示程序将要运行到哪一行。2、虚拟机栈 虚拟机栈描述的是java方法执行的内存模型,为线程私有。 每个方法执行时都会创建一个栈帧,用于存储 局部变量,操作数栈,动态链接,方法出口等。 每个方法执行从开始到完成对应为栈帧从入栈道出栈的过程。3、本地方法栈 本地方法栈与虚拟机栈类型,不同的为 虚拟机栈执行的是 java方
2018-02-02 10:50:46 280
原创 二分查找算法
1.二分查找又称折半查找,它是一种效率较高的查找方法。2.二分查找要求:(1)必须采用顺序存储结构 (2).必须按关键字大小有序排列3.原理:将数组分为三部分,依次是中值(所谓的中值就是数组中间位置的那个值)前,中值,中值后;将要查找的值和数组的中值进行比较,若小于中值则在中值前 面找,若大于中值则在中值后面找,等于中值时直接返回。然后依次是一个递归过程,将前半部分或者后半部分继续分解为三
2018-02-01 11:45:14 241
转载 Java实现 二叉搜索树算法(BST)
转自:http://blog.csdn.net/garfielder007/article/details/51946494http://ifeve.com/java%e5%ae%9e%e7%8e%b0-%e4%ba%8c%e5%8f%89%e6%90%9c%e7%b4%a2%e6%a0%91%e7%ae%97%e6%b3%95%ef%bc%88bst%ef%bc%89/一、树 & 二
2018-02-01 10:43:28 305
J2EE文件上传org.apache.commons-fileupload-1.2.1.jar
2013-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人