javaee开发常见的模式有MVC模式,在C层中常常会再次分层,如:servlet(web层)、service(业务逻辑层)、dao(数据访问层),其中service和dao最容易混在一起,如转钱交易场景,service层需要执行“事务”操作,会用到数据库连接对象(Connection),这就与dao层混在一起了,因为Connection是dao层才会用到对象,但如果把“事务”放到dao层,也是将service层与dao混在一起,因为转钱交易这个事务应该由service层来做。所以,使用ThreadLocal可以解决这样的分层问题。