Tag Archives: Stepping on pits and Solutions

[Solved] PageHelper Error: syntax error, error in :‘it 1 LIMIT ? ‘

Error Messages:

syntax error, error in :‘it 1 LIMIT ? ‘

 

Problem Cause:
The PageHelper method uses static ThreadLocal parameters, and the paging parameters and threads are bound.
This is safe as long as we ensure that the PageHelper method is called immediately after the MyBatis query method. This is because PageHelper automatically clears the ThreadLocal stored object in the finally snippet.
The page started in the thread does not guarantee that the thread will have cleared the page variable by the time the current execution exits.
One PageHelper paging process is as follows.
i. Set the page parameter
Second, execute the query method
Third, the Interceptor interface checks whether there is a set page parameter in ThreadLocal
If the page parameter exists, regenerate count sql and page sql, and execute the query. If the page parameter does not exist, return the query result directly.
V. Execute LOCAL_PAGE.remove() to clear the page parameter.

Solution:
Call PageHelper.clearPage() at the end of the method using PageHelper;