code: public String getFirstFieldName(final DBObject dbObj) {
          String fieldName = getNameToStore();
          boolean foundField = false;
          for (final String n : getLoadNames()) {
              if (dbObj.containsField(n)) {
                  if (!foundField) {
                      foundField = true;
                      fieldName = n;
                  } else {
                      throw new MappingException(format("Found more than one field from @AlsoLoad %s", getLoadNames()));
                  }
              }
          }
          return fieldName;
      }
docs: Gets the field name to use when converting from a DBObject
  
  @param dbObj the DBObject to scan for alternate names
  @return the value of this field mapped from the DBObject
  @see AlsoLoad