一个继承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