Domanda

In Objective-C su Apple esiste qualcosa chiamato " Key-Value Coding " che ti permette di attraversare il grafico degli oggetti usando stringhe simili ai percorsi del filesystem. Esiste un protocollo informale (ad es. Interfaccia) che consente agli oggetti di restituire valori in base alla chiave " " sono richiesti. per esempio. L'impostazione predefinita è di restituire il valore di un campo denominato dalla chiave, mentre raccolte relazionali come NSDictionaries possono implementare comportamenti più interessanti.

Esempio di pseudo codice:

foo.bar = new baz();
foo.bar.mymap = new map();
foo.bar.mymap['bom'] = 2;

foo.valueForKeyPath("bar.mymap.bom") # 2

C'è qualcosa del genere per Java? Sarebbe abbastanza facile da implementare, ma ho pensato di guardare prima.

È stato utile?

Soluzione

PropertyUtils.getProperty , dalla libreria beanutils di apache, lo fa per le proprietà JavaBean.

Altri suggerimenti

Hmm, beh, nel caso in cui qualcun altro abbia questa domanda, sembra che MVEL sia una buona scommessa:

http://mvel.codehaus.org/Property+Navigation

La Ujorm è una libreria Java open source che fornisce oggetti basati sull'architettura chiave-valore, vedere il esempi .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top