使用Dozer优雅的将DO转换成VO
在Web开发中,我们会接触到很多领域模型中的概念,其中大部分和实体相关的概念都有缩写,一般以O(Object)结尾。其中比较常见的由DO、DTO、VO、DAO等。我们也经常有把一个实体对象转换为另外一个实体对象的操作。本文主要是介绍一种作者...
在Web开发中,我们会接触到很多领域模型中的概念,其中大部分和实体相关的概念都有缩写,一般以O(Object)结尾。其中比较常见的由DO、DTO、VO、DAO等。我们也经常有把一个实体对象转换为另外一个实体对象的操作。本文主要是介绍一种作者...
拥抱变化。价值观。六脉神剑。 记得刚刚入职的时候,在上百阿的时候,就有很多人说过这个词。 在这里待了这么久,身边一直有同事主动或被动拥抱了变化。 今天,轮到了自己。 从技术团队到业务团队。 同事说,好事儿。 去业务团队锤炼锤炼。 我觉得,并...
在Java中,有很多比较实用的类库,他们通常都定义了一系列具有常见功能的方法。本文总结了最常用的Java中的实用类以及他们的最常用的方法。无论是类和类中方法都是按照流行程度来排序的。 本文中列出来的类及方法都是经过大量实践的常用类库及方法,...
命名服务,顾名思义,就是帮助我们对资源进行命名的服务,命名的目的当然是为了更好的定位了。这里所提到的资源在不同场景中包括但不限于计算机(主机)名和地址、应用提供的服务的地址或者远程对象等。 本文主要介绍Java中的命名服务、简单的命名服务的...
关注我的博客(http://www.hollischuang.com)的人可能都知道,我之前写过一篇文章专门介绍了一下2PC和3PC(详见:关于分布式事务、两阶段提交协议、三阶提交协议)。上一篇文章中主要介绍了下这两种分布式一致性协议的概念...
默认情况下,使用vim打开文本文件都是灰蒙蒙的一片,当我们要在其中查询某个字符的时候也看的不清楚。但是,有办法解决这种困境。 主要是修改~/.vimrc文件 文件内容如下: set ai " auto indenting set histo...
作为一个合格的开发人员,不仅要能写得一手还代码,还有一项很重要的技能就是排查问题。这里提到的排查问题不仅仅是在coding的过程中debug等,还包括的就是线上问题的排查。由于在生产环境中,一般没办法debug(其实有些问题,debug也白...
原文地址:深入解析String#intern 引言 在 JAVA 语言中有8中基本类型和一种比较特殊的类型String。这些类型为了使他们在运行过程中速度更快,更节省内存,都提供了一种常量池的概念。常量池就类似一个JAVA系统级别提供的缓存...
本文由HollisChuang 翻译自 The Top 100 Java Libraries in 2016 – After Analyzing 47,251 Dependencies . 原作者:Henn Idan 我们分析了GitHub...
在深入理解乐观锁与悲观锁一文中我们介绍过锁。本文在这篇文章的基础上,深入分析一下乐观锁的实现机制,介绍什么是CAS、CAS的应用以及CAS存在的问题等。 线程安全 众所周知,Java是多线程的。但是,Java对多线程的支持其实是一把双刃剑。...