12 2019 档案

摘要:/** * Mongo中要处理的数据量比较多时,可以进行分批量处理 * 使用MongoTemplate分批进行处理数据 * skip(num).limit(10000) 跳过num条数据后,取10000条数据 */ public static void main(String[] args) { / 阅读全文
posted @ 2019-12-31 17:02 表演给自己看的认真 阅读(1927) 评论(0) 推荐(0) 编辑
摘要:public static void main(String[] args) throws ParseException { String firstDate = "2019-01-01"; String lastDate = "2019-012-31"; String createdTime = 阅读全文
posted @ 2019-12-30 16:50 表演给自己看的认真 阅读(1096) 评论(0) 推荐(0) 编辑
摘要:/** * java.util.concurrent.locks包提供的ReentrantLock用于替代synchronized加锁* 因为synchronized是Java语言层面提供的语法,所以我们不需要考虑异常,* 而ReentrantLock是Java代码实现的锁,我们就必须先获取锁,然后 阅读全文
posted @ 2019-12-20 15:47 表演给自己看的认真 阅读(190) 评论(0) 推荐(0) 编辑
摘要:/** * ReentrantLock使用Condition对象来实现wait和notify的功能* 使用Condition时,引用的Condition对象必须从Lock实例的newCondition()返回,这样才能获得一个绑定了Lock实例的Condition实例* Condition提供的aw 阅读全文
posted @ 2019-12-20 14:53 表演给自己看的认真 阅读(162) 评论(0) 推荐(0) 编辑
摘要:/** * StampedLock和ReadWriteLock相比,改进之处在于:读的过程中也允许获取写锁后写入!这样一来,我们读的数据就可能不一致,所以,需要一点额外的代码来判断读的过程中是否有写入,这种读锁是一种乐观锁。* 乐观锁的意思就是乐观地估计读的过程中大概率不会有写入,因此被称为乐观锁。 阅读全文
posted @ 2019-12-20 14:52 表演给自己看的认真 阅读(156) 评论(0) 推荐(0) 编辑
摘要:/*** JDK提供了ExecutorService实现了线程池功能:* 线程池内部维护一组线程,可以高效执行大量小任务;* Executors提供了静态方法创建不同类型的ExecutorService;* 必须调用shutdown()关闭ExecutorService;* ScheduledThr 阅读全文
posted @ 2019-12-20 14:51 表演给自己看的认真 阅读(169) 评论(0) 推荐(0) 编辑
摘要:/** * Runnable接口有个问题,它的方法没有返回值。如果任务需要一个返回结果,那么只能保存到变量,还要提供额外的方法读取,非常不便。 * Java标准库还提供了一个Callable接口,和Runnable接口比,它多了一个返回值 * Callable接口是一个泛型接口,可以返回指定类型的结 阅读全文
posted @ 2019-12-20 14:49 表演给自己看的认真 阅读(818) 评论(0) 推荐(0) 编辑
摘要:explain使用介绍 id:执行编号,标识select所属的行。如果在语句中没子查询或关联查询,只有唯一的select,每行都将显示1。否则,内层的select语句一般会顺序编号,对应于其在原始语句中的位置 select_type:显示本行是简单或复杂select。如果查询有任何复杂的子查询,则最 阅读全文
posted @ 2019-12-20 11:36 表演给自己看的认真 阅读(4912) 评论(0) 推荐(0) 编辑
摘要:一、volatile关键字 volatile关键字的目的是告诉虚拟机:1.每次访问变量时,总是获取主内存的最新值;2.每次修改变量后,立刻回写到主内存。 volatile关键字解决的是可见性问题:当一个线程修改了某个共享变量的值,其他线程能够立刻看到修改后的值。volatile关键字解决了共享变量在 阅读全文
posted @ 2019-12-16 17:26 表演给自己看的认真 阅读(160) 评论(0) 推荐(0) 编辑
摘要:public class TestDataStructure { public static void main(String[] args) { int n = 4; int total = factorial(n); System.out.println(total);//24 } //阶乘递归 阅读全文
posted @ 2019-12-13 15:36 表演给自己看的认真 阅读(117) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示