摘要: compareTo和equal 在Java中我们常使用Comparable接口来实现排序,其中compareTo是实现该接口方法。我们知道compareTo返回0表示两个对象相等,返回正数表示大于,返回负数表示小于。同时我们也知道equals也可以判断两个对象是否相等。 按照常规思路来说应该两者in 阅读全文
posted @ 2016-08-05 13:36 wade&luffy 阅读(1610) 评论(0) 推荐(0) 编辑
摘要: 定义 HashMap实现了Map接口,继承AbstractMap。其中Map接口定义了键映射到值的规则,而AbstractMap类提供 Map 接口的骨干实现,以最大限度地减少实现此接口所需的工作,其实AbstractMap类已经实现了Map。 数据结构 我们知道在Java中最常用的两种结构是数组和 阅读全文
posted @ 2016-08-05 12:24 wade&luffy 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 1. 依赖包安装 pom.xml 加入: <!-- redis cache related.....start --> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</ar 阅读全文
posted @ 2016-07-22 10:12 wade&luffy 阅读(276) 评论(0) 推荐(0) 编辑
摘要: IO的理解 IO操作的两个阶段: 第一个阶段: 查看数据是否就绪; 第二个阶段: 进行数据拷贝(内核将数据拷贝到用户线程)。 同步IO:当用户线程发出IO请求操作之后,如果数据没有就绪,需要通过用户线程或者内核不断地去轮询数据是否就绪,当数据就绪时,再将数据从内核拷贝到用户线程; 异步IO:只有IO 阅读全文
posted @ 2016-07-18 10:37 wade&luffy 阅读(613) 评论(0) 推荐(0) 编辑
摘要: wait()、notify()和notifyAll()是基于synchronized Condition是基于Lock的。 Condition是在java 1.5中才出现的,它用来替代传统的Object的wait()、notify()实现线程间的协作,相比使用Object的wait()、notify 阅读全文
posted @ 2016-07-15 17:11 wade&luffy 阅读(656) 评论(0) 推荐(0) 编辑
摘要: 锁的相关概念 1.可重入锁 如果锁具备可重入性,则称作为可重入锁。像synchronized和ReentrantLock都是可重入锁,可重入性在我看来实际上表明了锁的分配机制:基于线程的分配,而不是基于方法调用的分配。举个简单的例子,当一个线程执行到某个synchronized方法时,比如说meth 阅读全文
posted @ 2016-07-15 14:14 wade&luffy 阅读(373) 评论(0) 推荐(1) 编辑
摘要: 来源:一颗卤蛋 链接:http://www.cnblogs.com/lyroge/p/3837886.html 背景: 自己的一个网站,由于单表的数据记录高达了一百万条,造成数据访问很慢,Google分析的后台经常报告超时,尤其是页码大的页面更是慢的不行。 测试环境: 先让我们熟悉下基本的sql语句 阅读全文
posted @ 2016-07-15 12:18 wade&luffy 阅读(505) 评论(0) 推荐(0) 编辑
摘要: 一、类加载器 类加载器(ClassLoader),顾名思义,即加载类的东西。在我们使用一个类之前,JVM需要先将该类的字节码文件(.class文件)从磁盘、网络或其他来源加载到内存中,并对字节码进行解析生成对应的Class对象,这就是类加载器的功能。我们可以利用类加载器,实现类的动态加载。 二、类的 阅读全文
posted @ 2016-07-15 11:21 wade&luffy 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 字符串不属于基本类型,但是可以像基本类型一样,直接通过字面量赋值,当然也可以通过new来生成一个字符串对象。不过通过字面量赋值的方式和new的方式生成字符串有本质的区别: 通过字面量赋值创建字符串时,会优先在常量池中查找是否已经存在相同的字符串,倘若已经存在,栈中的引用直接指向该字符串;倘若不存在, 阅读全文
posted @ 2016-07-15 10:54 wade&luffy 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 并发编程中的三个概念 在并发编程中,我们通常会遇到以下三个问题:原子性问题,可见性问题,有序性问题。我们先看具体看一下这三个概念: 1.原子性 原子性:即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。 反映到并发编程中会出现什么结果呢? 举个最简单的例子,大家想 阅读全文
posted @ 2016-07-15 10:12 wade&luffy 阅读(246) 评论(0) 推荐(0) 编辑