Stampa proprietà di un bean

di il
1 risposte

Stampa proprietà di un bean

Vorrei creare un metodo il più generico possibile per stampare le proprietà di un generico bean passato come parametro

Ad oggi il codice che uso è dipendente dalla classe di appartenenza dell'oggetto passato, c'è modo di svincolarsi ? Con i generics non credo sia possibile
Il codice presuppone un oggetto AmministratoriDTO, vorrei passare Object


BeanInfo bi = Introspector.getBeanInfo( AmministratoriDTO.class );
PropertyDescriptor[] pds = bi.getPropertyDescriptors();

for ( PropertyDescriptor p : pds ){
//Method m = p.getReadMethod();
logger.warn( p.getName() + " = " + org.apache.commons.beanutils.BeanUtils.getProperty( autoreDTO, p.getName() ) );
}

1 Risposte

  • Re: Stampa proprietà di un bean

    aLinux14 ha scritto:


    Vorrei creare un metodo il più generico possibile per stampare le proprietà di un generico bean passato come parametro
    La Apache Commons BeanUtils ha metodi per questo. Tipo il describe di BeanUtils.

    Se hai bisogno di questo, per esempio per "logging", ok, ha senso. Se ti serve generare una stringa per toString in modo generalizzato, la Apache Commons Lang ha i reflectionToString() in ToStringBuilder.

    aLinux14 ha scritto:


    Con i generics non credo sia possibile
    No infatti, i generics "esistono" e sono controllati solo a livello di compilazione. E comunque non c'entrano nulla di per sé con le "proprietà" JavaBean degli oggetti.
Devi accedere o registrarti per scrivere nel forum
1 risposte