请教一个事务+多线程 的问题

在一个项目中,使用了DAO封装底层DB访问,所有DAO的访问使用一个ControlImpl(单例类)
在应用中(一个单例类)使用Connection的事务控制,

在单线程时情况不错,但是在多线程时就出了问题,一个线程常常关闭了
另外一个线程的Connection,没办法只好所有方法同步(严重影响性能)。
此处单例模式是否被滥用?

在事务+多线程情况下的调试超级麻烦,大家有什么好的调试方法?

使用connection pool,不同的线程对应不同的connection,不需要同步,把事务和并发处理交给Database