摘要:
当线程A将level设置为99时,此时锁已经释放了,但是事务还没提交!!线程B此时可以获取到锁并进行查询,查询出来的level还是线程A修改之前的100,所以出现了并发问题。 解决方案 1、@Transactional单独一个方法 private Lock lock = new ReentrantL 阅读全文
摘要:
一:toMap源码中重复key不会替换,会直接抛出异常 可用第三个参数解决,(new,old) -> new 二:value值不能为空,map最基本的特性,可以用Optional处理 Map<Integer, String> map = userList.stream() .collect(Coll 阅读全文