1、java.lang.UnsupportedOperationException
情形:实体A中包含实体B的list数据,像List中插入A数据,根据A.state和B.state判断状态是否相同,如果相同,则把B插入的A的list中,首次插入的时候为了省事使用了Collections.singletonList(),结果获取A中的list再次插入数据的时候报错。
说明:因为Collections.singletonList()方法返回的是Collections的一个内部类SingletonList,这个类是不允许做插入删除等操作的。同样的还有Arrays.asList(),list.subList(),返回的都是一个不可操作类,只能进行遍历,所以需要对得到的list在进行额外的插入删除操作时,不用使用这些方法。
2、基本类型数据转stream,
使用Stream.of()并不能得到预期的结果
因为它会把整个数组当初一个object,可以使用Arrays.stream();
3、BigDecimal的divide方法
一定要使用
divide(BigDecimal divisor, int scale, int roundingMode)
不要用
divide(BigDecimal divisor).setScale(int newScale, int roundingMode)
4、like 右模糊查询不走索引
一般了解到的like右模糊查询是可以走索引的,但是如果like字段太短的话,区分度不够的话模糊查询也有可能不走索引。