code: private ICriteria addLogicalExpression(Restrictor criterion) {
  		LogicRestrictor e = (LogicRestrictor) criterion;
  		Restrictor ic1 = e.getLeft();
  		Restrictor ic2 = e.getRight();
  
  		boolean isOr = RestrictType.or.toString().equals(e.getRestriction());
  		if (isOr)// 如果是 or 运算，用小括号扩上
  			queryString.append("(");
  
  		// 添加左侧表达式
  		if (ic1 instanceof SimpleRestrictor)
  			addSimpleExpression(ic1);
  		else if (ic1 instanceof LogicRestrictor)
  			addLogicalExpression(ic1);
  
  		// 添加逻辑运算符
  		queryString.append(" ").append(e.getRestriction()).append(" ");
  
  		// 添加右侧表达式
  		if (ic2 instanceof SimpleRestrictor)
  			addSimpleExpression(ic2);
  		else if (ic2 instanceof LogicRestrictor)
  			addLogicalExpression(ic2);
  
  		if (isOr)// 如果是 or 运算，用小括号扩上
  			queryString.append(")");
  
  		return this;
  	}
docs: /*
  添加逻辑运算表达式