ThreadLocal的简单使用

1.ThreadLocal是什么?

线程局部变量,有效作用域仅线程执行过程,在一定程度上可保证值在多线程环境中的安全性;
每个Thread对象内部都维护了一个ThreadLocalMap这样一个ThreadLocal的Map,可以存放若干个ThreadLocal。每次获取或者设置都是对该ThreadLocal进行的操作,是与其他线程分开的。 read more

Controller中为什么不能写@Transactional

1.背景

Controller指SpringMVC项目中用于定义接口信息的类,该类一般会被@Controller或@RestController等SpringMVC相关注解标记;
@Transactional指spring-tx包中定义的事务注解,被该注解标记的方法或类将成为一个整体,“同进同退”;
在开发过程中,注解是我们的神兵利器,但如果不恰当的使用将会造成严重的问题。 read more