零碎知识
ListUtil.partition(list,size)方法
可以利用该方法将一个列表以size为大小分为多个列表.
我们可以利用这个方法来将一个可能数量非常大的列表分成多个定长的列表,再进行数据库批量插入/删除,来控制批量插入/删除数据的数量.
List<List> insertList =ListUtil.partion(list,size);
insertList.foreach(x->{mapper.batchInsert(x)});
git回退commit
如果我们提交了内容并且push到了远程分支上.
可以先通过git log寻找到之前自己想要回退到的提交位置
然后通过reset --hard <commit-hash>回退到该位置
上面俩步可以直接通过idea自带的git log右击选择Reset Current Branch to Here对应的提交来直接回退

最后使用git push origin <branch-name> --force将本地的代码覆盖远程仓库.
Podam 对象填充随机值的利器
我们有时候进行测试的时候需要对一个字段繁多的对象进行填充,但是对其值并没有要求,而一个个去set又过于繁琐.
这个时候我们就可以利用Podam.
那么如何使用呢?
首先在pom.xml中引入对应的jar包
<dependency>
<groupId>uk.co.jemos.podam</groupId>
<artifactId>podam</artifactId>
<version>7.1.1.RELEASE</version>
</dependency>
在使用的时候只要获得其Factory对象,然后调用其manufacturePojo方法即可
PodamFactory podamFactory=new PodamFactoryImpl();
GetYapiJsonDto getYapiJsonDto = podamFactory.manufacturePojo(GetYapiJsonDto.class);
System.out.println(JSON.toJSONString(getYapiJsonDto));
可以看到,这样我们就获得了一个mock对象,就可以方便的拿来测试了

计时器StopWatch
我们平时经常在业务代码中需要去查看到达某个业务代码时的时间,或是计算某些代码行执行完成的时间.
而使用StopWatch就能让我们便捷的达成这些目的
类名:StopWatch 位于包: org.apache.commons.lang3.time
那么如何使用呢?
StopWatch stopWatch = new StopWatch();
//我们可以通过stopWatch.start();方法来开始计时
stopWatch.start();
//使用stopWatch.formatTime()会将时间转换成HH:mm:ss.SSS格式的时间字符串
System.out.println("开始:"+stopWatch.formatTime());
/*
* 一些业务代码 ....
*/
System.out.println("结束:"+stopWatch.formatTime());
//如果我们想要停止计时,可以使用stop停止计时器
stopWatch.stop();
//如果我们在stop后想要重新开始计时,可以使用reset然后start进行开始
stopWatch.reset();
stopWatch.start();

浙公网安备 33010602011771号