private static List<Field> parseFields(List<Class<?>> classes) {
        List<Field> fields = null;
        for (Class<?> clazz : classes) {
            Field[] declaredFields = clazz.getDeclaredFields();
            for (Field field : declaredFields) {
                if (fields == null) {
                    fields = new ArrayList<>(declaredFields.length);
                }
                fields.add(field);
            }
        }
        return fields == null
                ? Collections.emptyList()
                : fields;
    }
@implNote The method doesn't the support shard keys that contains a hashed key supported in
          4.4
turms-server-common/src/main/java/im/turms/server/common/storage/mongo/entity/MongoEntityFactory.java