一个继承Model的BaseModel中,定义变量:
- protected List<Object> whereParams = new ArrayList<Object>();
所有的model都继承自BaseModel。
在分页查询时,代码如下:
- public Page<Record> getJsonPage(Integer pageNum , Integer pageSize , Map<String, String> map) {
- whereParams.clear();
- String select = "SELECT tn.* " ;
- StringBuffer sBuffer = new StringBuffer(" FROM t_novel tn ");
- if (StrKit.notBlank(map.get("classifyId"))) {
- sb.append(" AND tn.classifyId = ? ");
- whereParams.add(map.get("classifyId"));
- }
- return Db.paginate(pageNum, pageSize, select, sBuffer.toString() , whereParams.toArray() );
- }
运行日志中,偶尔会看到如下错误:
本地调试时,一切正常。
猜想是不是线程冲突导致?
一个线程还没执行完查询,另外一个线程进入后执行了
- whereParams.clear();
- 导致这个错误?
项目:JFinal