public static Field findQLAliasFields()

in src/main/java/com/ql/util/express/util/QLAliasUtils.java [74:98]


    public static Field findQLAliasFields(Class<?> baseClass, String propertyName) {
        Field[] fields = baseClass.getDeclaredFields();
        for (Field field : fields) {
            //优先使用本身的定义
            if (propertyName.equals(field.getName())) {
                return field;
            }
            //使用注解定义
            QLAlias[] qlAliases = field.getAnnotationsByType(QLAlias.class);
            for (QLAlias alias : qlAliases) {
                if (alias.value().length > 0) {
                    for (int i = 0; i < alias.value().length; i++) {
                        if (propertyName.equals(alias.value()[i])) {
                            return field;
                        }
                    }
                }
            }
        }
        Class<?> superclass = baseClass.getSuperclass();
        if (superclass != null) {
            return findQLAliasFields(superclass, propertyName);
        }
        return null;
    }