لعبة - الحصول على قيمة من كائن []

0

أحاول كتابة تعبير SpEL يمكنه البحث في صفيف Object []. فيما يلي بعض نماذج التعليمات البرمجية:

public class Foo {
    private String foo;
    public Foo(String foo) {
        this.foo = foo;
    }
    private String getFoo() {
        return foo;
    }
}

public class Bar {
    private String bar;
    public Bar(String bar) {
        this.bar = bar;
    }
    private String getBar() {
        return bar;
    }
}

    public static void main(String args) {
        Object arr[] = {new Foo("foo1"), new Bar("bar1")};
        ExpressionParser expressionParser = new SpelExpressionParser();
        Expression expression = expressionParser.parseExpression("someExpression to search for bar");
        Object expressionResult = expression.getValue(arr, Object.class);
    }

هل يمكن لأي شخص مساعدتي في كتابة SpEL للبحث arr والعثور على الكائن الأول الذي يحتوي على خاصية "شريط" وإرجاع قيمة الشريط؟

التطبيق العملي لهذا هو أنني أكتب تعليقًا توضيحيًا للجانب وأحاول أن أعلن المسار إلى حجة في التعليق التوضيحي:

@MyAnnotation(spelPath="someExpression to search for bar")
public void myMethod(Foo foo, Bar bar, more arguments)

مساعدتكم هو محل تقدير كبير!

1 إجابة

2
افضل جواب

لدى SpEL حدود معقولة للانعكاس. أود أن أقترح كتابة بعض static طريقة فائدة والاستدعاء بالفعل من SpEL باستخدام عامل نوع:

@MyAnnotation(spelPath="T(com.my.proj.MyUtils).searchBar(#root)")
:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام