关于mybatis3.3 databaseId,代码没用

时间:2017-08-23 05:57:07

标签: mybatis

我研究了mybatis3.3源代码,现在我有一个问题:在XMLMapperBuilder.databaseIdMatchesCurrent()

private boolean databaseIdMatchesCurrent(String id, String databaseId, String requiredDatabaseId) {
    if (requiredDatabaseId != null) {
      if (!requiredDatabaseId.equals(databaseId)) {
        return false;
      }
    } else {
      if (databaseId != null) {
        return false;
      }
      // skip this fragment if there is a previous one with a not null databaseId
      if (this.sqlFragments.containsKey(id)) {
        XNode context = this.sqlFragments.get(id);
        if (context.getStringAttribute("databaseId") != null) {
          return false;
        }
      }
    }
    return true;
  }

如果(requiredDatabaseId == null&& databaseId!= null),则该函数将返回false。 所以代码

 if (this.sqlFragments.containsKey(id)) {
            XNode context = this.sqlFragments.get(id);
            if (context.getStringAttribute("databaseId") != null) {
              return false;
            }
          }

肯定没办法返回false,这段代码没用。 我只想提问:我理解这一点,对吧?

0 个答案:

没有答案