pagehelper线程安全的原理

PageHelper的使用:
在配置文件中:

 
        
        
        
            
                
                
                    
                        
                            oracle
                            true
                        
                    
                
            
        
    

在service中:

PageHelper.startPage(page, size);
        return ordersDao.findAll();//这里可以用PageInfo接收

pagehelper是线程安全的吗?
例子:
如果同时有A线程给PageHelper赋值了,而B没有。那难道B也会被分页吗?
显然不是。
其实呢 PageHelper.startPage(page, size);这个方法是给Thread的ThreadLocal赋值。而需要执行语句的时候,就从ThreadLocal中取,那就获得了当前线程的分页值了。
这里不涉及到成员变量,当然也没有同步的问题啦~
这个思想很重要!

你可能感兴趣的:(pagehelper线程安全的原理)