Java高阶
arthur.dy.lee
这个作者很懒,什么都没留下…
展开
-
领域驱动设计在互联网业务开发中的实践
领域驱动设计在互联网业务开发中的实践2017年12月22日作者: 文彬 子维文章链接12254字25分钟阅读至少30年以前,一些软件设计人员就已经意识到领域建模和设计的重要性,并形成一种思潮,Eric Evans将其定义为领域驱动设计(Domain-Driven Design,简称DDD)。在互联网开发“小步快跑,迭代试错”的大环境下,DDD似乎是一种比较“古老而缓慢”的思想。然而,由于互联网公司也逐渐深入实体经济,业务日益复杂,我们在开发中也越来越多地遇到传统行业软件开发中所面临的问...转载 2020-11-01 00:58:49 · 234 阅读 · 0 评论 -
Java 8系列之重新认识HashMap
Java 8系列之重新认识HashMap原文连接:Java 8系列之重新认识HashMapHashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,转载 2020-07-27 16:47:51 · 222 阅读 · 0 评论 -
WeakHashMap 以及ThreadLocal的几点思考
WeakHashMap 以及ThreadLocal的几点思考1. WeakHashMap的key是用的WeakReference,在没有其它强引用的情况下,下一次GC时才会被垃圾回收WeakReference 被垃圾回收是有前置条件的,很多书或博客上,经常把它落下。1.1 WeakReference 证明代码如果B的强引用设为null,那么B的弱引用将被垃圾回收...原创 2018-04-02 00:23:56 · 2012 阅读 · 1 评论 -
QA
疑问: 为什么t1.open() 调用notifyAll()的时候,t2, t3为什么不释放?还在wait等待状态import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;/** * Created by arthur.dy.lee on 2017/6/29. *///public cl原创 2017-07-27 16:37:26 · 398 阅读 · 0 评论 -
Weak references & Soft references
一直以为弱引用就是在GC的时候就会立刻回收掉的,软引用是内存不够用的时候,GC才会去回收的。 但这里有一个前提:是没有任何强引用对象的时候才会去做的。 如下文:If there are no strong references to the原创 2017-07-06 22:19:26 · 346 阅读 · 1 评论 -
史上最清晰的红黑树讲解
TreeSet and TreeMap总体介绍之所以把TreeSet和TreeMap放在一起讲解,是因为二者在Java里有着相同的实现,前者仅仅是对后者做了一层包装,也就是说TreeSet里面有一个TreeMap(适配器模式)。因此本文将重点分析TreeMap。Java TreeMap实现了SortedMap接口,也就是说会按照key的大小顺序对Map中的元素进行排序,key大小的评判可以通过其本身转载 2016-10-11 17:43:47 · 561 阅读 · 0 评论 -
处理大型Excel文件的Java类库: X4J Analytic
x4j-analytic是一个用于Java编程语言的开源XLSX格式模板引擎API。X4J可嵌入在Java应用程序库,作为实现完全成熟的报表解决方案。X4J拥有很高的性能,能够使用恒定内存在数秒内产生一百万行的Excel报表。X4J主输入/输出格式是XLSX,Excel是作为设计编辑模板。也可以导出其他格式的报表:PDF,HTML,XML,CSV。开源项目主页: http://www.open-op转载 2016-08-23 23:35:05 · 777 阅读 · 0 评论 -
StackOverflow: 你没见过的七个最好的Java答案
分支预测SO上最多投票的一个Java问题是:为什么处理一个排序数组要比非排序数组快的多。为了回答这个问题,你需要使用分支预测(branch prediction)。分支预测是一种架构,旨在通过在真实的路径发生前猜测某一分支的下一步来提升处理过程。分支在这里即一个if语句。这样的话,如果是一个排序数组,那么分支预测将会进行,否则不会进行。Mysticial(so上的一个回答者)试图使用铁路和火车来简单转载 2016-09-14 00:05:46 · 754 阅读 · 0 评论 -
openCsv通用导出
通用openCsv工具类原创 2016-08-28 21:53:07 · 3074 阅读 · 2 评论 -
poi封装导出Excel【java】
最近做项目的过程中需要实现导出excel,他们有已经写好的实现,但是只是针对他们业务逻辑的,所以我就想能不能封装一个通用的方法,于是找出之前用过的导出方法,然后照着封装了一个,还可以。但是两个方法也有不同,一个用的是WritableWorkbook(JXL),另一个用的是HSSFWorkbook(POI)。我们先来看看两者有什么关系。一、扫盲1、POI 对于POI而言,可以说是导出EXC转载 2016-08-23 23:31:16 · 821 阅读 · 0 评论 -
进程的挂起与阻塞
挂起与阻塞转载 2016-06-21 00:30:03 · 17668 阅读 · 12 评论 -
Linux 五种IO模型
Linux 五种IO模型转载 2016-07-02 20:13:34 · 732 阅读 · 0 评论 -
同步、异步、阻塞与非阻塞
h同步、异步、阻塞与非阻塞转载 2016-07-02 17:13:12 · 1362 阅读 · 0 评论 -
单例对象的并发调用需要同步
为什么单例对象的并发调用需要同步?最近在阅读 《Inside theJVM》 这本书,结合一些日常工作学习中的感想,随便写一些东西,蜻蜓点水,不必有章法。 关于“单例同步”: 一直有人在问单例对象的并发调用是否需要同步,基本属于“月经帖”了,答案是现成的满天下都是,但真正能让人心里踏实下来的解释寥寥无几。实际上,只要学习了一些JVM的运行原理,解释这个问题就不难了。如果一个类是单例的,比如转载 2016-07-02 16:12:00 · 2719 阅读 · 0 评论 -
Java异常处理的10个最佳实践
Java异常处理转载 2016-06-15 23:35:45 · 966 阅读 · 0 评论 -
生产消费者1
Java7并发实践手册转载 2016-07-12 16:14:09 · 360 阅读 · 0 评论 -
异常封装
异常封装转载 2016-05-16 15:34:51 · 1297 阅读 · 0 评论 -
Java虚拟机类加载机制
Java虚拟机类加载机制转载 2016-05-03 14:26:55 · 555 阅读 · 0 评论