protected boolean getRunStatus() {
Task task = taskMapper.getRunByRemark(AUTO_RUN_REMARK);
if(task == null) {
Task obj = new Task();
obj.setRemark(AUTO_RUN_REMARK);
obj.setRunStatus(2);
int save = taskMapper.save(obj);
getRunStatus();
} else {
Integer runStatus = task.getRunStatus();
return runStatus == 1 ? true : false; //return之后还会调用getRunStatus(),最终返回false
}
return false;
}
会返回
把代码稍微修改一下
如果
taskMapper.getRunByRemark
获取到的 task 为 null 就新生成一个存到 taskMapper 里,然后递归调用。这个时候代码就会走 else 分之,程序返回。
如果
taskMapper.getRunByRemark
获取到的 task 不为 null,直接走 else 分之,程序返回。