自定义博客皮肤

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Chrome网页截屏

日常中可能需要截截屏,或者网页。微信等工具其实自带了截图工具可供使用。不过也有局限性,比如不能翻页。 其实Chrome自带了很强大的截取网页的工具,这里说下Mac上的用法,windows上的也类似。 1. ⌘Command + ⌥Option + I(Windows 为 F12)快捷键,召唤出...

2019-08-22 00:13:50

阅读数 36

评论数 0

vi编辑使用

vi 三种模式:命令行模式、插入模式、尾行模式。 命令行模式 命令模式,也是默认的,按下esc即可,可以执行移动光标,删除等操作。常用操作如下: 类别 分类 按键 光标移动 ...

2019-08-18 21:17:13

阅读数 7

评论数 0

Docker笔记一

联合文件系统 最近在学Docker,碰到联合文件系统的概念,看了下书和资料都说的不清楚。这里详细说明下。 官方说法:Docker联合文件系统Union File System,它是实现Docker镜像的技术基础,是一种轻量级的高性能分层文件系统,支持将文件系统中的修改进行提交和层层叠加,这个特性...

2019-08-15 20:02:45

阅读数 9

评论数 0

Mac下CentOS安装

最近在学linux和docker,需要安装linux。这里整理下安装过程。系统MacOS。 1. 虚拟机下载安装 Mac用的是VMware Fusion,这个可以官网下载。 这里安装很简单,不多描述 2.CentOs下载安装 这个是免费的,随便下载一个就好。当日也可以选择ubuntu等。...

2019-08-13 23:05:36

阅读数 20

评论数 0

Kafka本地安装笔记

本地手工玩一下kakfa,这里我用的MacOS,因此用brew安装。这里整理了下自己的安装笔记。首先java环境这里就不说了。 一、安装zookeeper brew的安装这里就不说了,直接安装zookeeper。运行以下命令即可。这里可能因为网络原因比较费时。 brew install z...

2019-08-03 16:02:49

阅读数 9

评论数 0

Hive SQL函数整理

hive sql跟mysql还是有点区别的。这里整理下一些自己常用的函数。 一、关系函数 匹配某列是否等于某值或列,比如A <> B。 关系函数 函数 语法及含义 注意及举例 = 等值比较 不要用于NULL <&am...

2019-08-01 23:54:45

阅读数 15

评论数 0

Mockito和PowerMock使用总结

Mockito和PowerMock 编写单元测试时,最常用就是利用mockito、PowerMock进行mock对象。 可以帮我们mock private方法、static方法、静态类等。 一个常见的单元测试如下:这里也mock了static方法。 被测试代码: @Component pu...

2019-06-05 00:19:14

阅读数 151

评论数 0

慎用Java Collection的contains函数

背景 最近碰到一个坑,看代码: @Test public void should_can_get_true_when_given_matched_type() { List<Integer> numberList = Lists.n...

2019-05-11 15:54:08

阅读数 144

评论数 0

ParameterizedType使用简单了解

之前项目中有一段逻辑:接收消息、解析、校验、业务处理。一开始代码显得冗余,然后改成模板方法。发现不同消息体解析成不同的类。 public abstract class Tests { public void handler(String message) { Info...

2019-04-13 13:59:30

阅读数 96

评论数 0

Java Stream Map和flatmap

编程中多数要对集合进行各种操作,获取Map、Set、List等。 Map 比如一个对象List,获取所有人的名字集合 @Test public void should_can_get_name_map() { PersonInfo kaka = new Per...

2019-02-16 19:47:43

阅读数 90

评论数 0

IntelliJ Save Action

在Team开发项目中,都是多人维护一个项目。因此,保持良好的代码规范与风格很重要。 IntelliJ 默认是自动保存的,因此很多时候修改后就出现:代码没有格式化、存在无用的import。 其实IntelliJ 中有很多实用的插件可以帮我们提高效率。Save Action就是一个。 安装简单:...

2018-09-23 20:42:51

阅读数 2575

评论数 0

MyBatis中使用LocalDateTime

背景 项目中使用MySQL数据库,然后用mybatis做数据持久化。最近使用时,想把一些model类的gmtCreate、gmtModified等字段从java.util.Date 改成java8的java.time.LocalDateTime,此类是不可变类,且自带很好用的日期函数api。 ...

2018-09-23 20:25:41

阅读数 5516

评论数 0

一次使用PowerMock的事故

项目结构:Spring boot+Dubbo+Zookeeper+PowerMock 为了在项目中更好地编写单元测试,在项目中引入了PowerMock做单元测试。 例子 先看一个正常例子:Spring boot+PowerMock 包依赖如下: testCompile ...

2018-09-21 22:27:05

阅读数 373

评论数 0

Java集合的交集、并集、差集

集合运算 retainAll 最近写代码时,遇到对集合进行操作:交集、并集、差集。 对于并集,最开始写法如下: @Test public void should_get_union_with_removeAll_and_addAll() { List&am...

2018-08-25 18:04:17

阅读数 480

评论数 0

Assertj了解

单元测试 一个单元测试分三步: 1. 准备数据 2. 执行测试方法 3. 断言测试结果 Java里面写单元测试都会以来JUnit,而且该包夜提供了一些的Assert的API。但不得不说确实不好用,可读性差。所以不推荐使用。很多人也喜欢用Hamcrest,非常好用(我现在还是用它)。遗憾的是从20...

2018-07-28 20:18:11

阅读数 2397

评论数 1

Jersey入门

Rest REST全称是Representational State Transfer,中文:表述性状态转移。啥意思?不解释。 简单来说:REST使用Web地址(URI)访问资源,使用动词(HTTP请求)操作资源。 动词 所谓动词,其实就是HTTP请求。可以将REST理解成一种Web服务协...

2018-07-28 16:51:06

阅读数 3181

评论数 0

Spring boot入门

Spring boot 过完年的时候,跟Thoughtworks的coach一起给项目的所有Web Service加继承测试。一直缺少一个Provider,一开始都是用Moco。不过Moco都是利用配置提供契约接口,毕竟是假的数据。而Spring boot利用很少的代码,就可以根据需要提供一个非...

2018-07-28 16:48:09

阅读数 94

评论数 0

Spring Cloud入门一

Spring cloud Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。特性 Spring Cloud专注于提供良好的开箱即用经验的典型用例和可扩展性机制覆盖。 分布式/版本化配置 服务注册和发...

2018-07-26 21:00:18

阅读数 47

评论数 0

Java线程池的使用

我们知道创建线程有三种方式:Thread、Runnable和线程池。前两者使用起来相对简单,而线程池在一个系统内部使用时就需要加倍小心了。代码规范先看下线程池中最核心的一个类:java.uitl.concurrent.ThreadPoolExecutor。该类是深入了解Java中的线程池的关键。下...

2018-07-01 22:22:55

阅读数 89

评论数 0

数据源与连接池

背景十一之后需要apply VPD到我们的项目中,在每一次数据库查询前,进行一次存储过程调用修改上下文。这样,VPD利用上下文中的变量值对查询结果遍历。因此需要对所有用到的JPA实现做一下整理,包括数据源。我们知道JDBC查询的时候都是需要四个步骤:1. 加载数据库驱动2. 获取数据库连接3. 查...

2018-06-27 21:31:06

阅读数 1865

评论数 1

提示
确定要删除当前文章?
取消 删除