IfNodeHandler是用来处理IF标签,封装到IfSqlNode对象中
public class IfNodeHandler implements NodeHandler {@Overridepublic void handleNode(Element nodeToHandle, List<SqlNode> contents) {// 解析test中表达式String test = nodeToHandle.attributeValue("test");// 解析if标签(其实也就是解析子标签)MixedSqlNode rootSqlNode = parseDynamicTags(nodeToHandle);//将解析到的内容封装成一个SqlNode(只是这个SqlNode还包含子SqlNode)IfSqlNode ifSqlNode = new IfSqlNode(test, rootSqlNode);contents.add(ifSqlNode);}}
