用户登录
用户注册

分享至

hibernate的连接池线程阻塞

  • 作者: Mars符号
  • 来源: 51数据库
  • 2021-01-28
ThreadLocal类是一个全局共享Map,里面用于存放每一个线程的唯一实例。
比如你放一个A类进去后,只要还是你这个线程来读取的话,那么这个A类还是你存进去的那个A。
而如果是别的线程来读则是读不到的,因为他的线程号和你是不同滴。
同理,如果你再放一个A类进去就会覆盖你以前存入的A类。

在你的程序中,你首先声明一个final的静态ThreadLocal,是为了让此ThreadLocal成为服务器中唯一的一个实例,然后在这个实例中进行操作:
首先就是查找这个实例中是否存在session,用的是s.get()方法,如果你以前存过的话,会给你以前存储过的那个session。相反,如果你没有存过,那么他会将一个null值传递给你程序中的那个sssion。
这时来一个判断,如果是空,那么就将你程序中的session进行初始赋值,并将他放入到ThreadLocal中,以便于下次直接调用。



  你好!

8i雨就不会好吧G2以后好人

如有疑问,请追问。
软件
前端设计
程序设计
Java相关