Java: cómo copiar propiedades de un bean a otro

Publicado: 2018-06-26

Cómo copiar propiedades de un bean a otro

La mayoría de los desarrolladores de Java están acostumbrados a crear clases de Java que se ajustan a los patrones de nomenclatura de JavaBeans para captadores y definidores de propiedades. Entonces es natural acceder a estos métodos directamente, usando llamadas a los métodos getXxx y setXxx correspondientes.

Sin embargo, hay algunas ocasiones en las que se necesita el acceso dinámico a las propiedades de los objetos Java (sin el conocimiento compilado de los métodos getter y setter de propiedades que se llamarán).

Ejemplos de casos de uso incluyen:

  • Creación de lenguajes de secuencias de comandos que interactúan con el modelo de objetos de Java (como Bean Scripting Framework).
  • Creación de procesadores de lenguaje de plantillas para presentaciones web y usos similares (como JSP o Velocity).
  • Creación de bibliotecas de etiquetas personalizadas para entornos JSP y XSP (como Apache Taglibs, Struts, Cocoon).
  • Consumo de recursos de configuración basados ​​en XML (como secuencias de comandos de compilación de Ant, descriptores de implementación de aplicaciones web, archivo server.xml de Tomcat).

BeanUtils Yakarta Commons La biblioteca presenta una variedad de funcionalidades para trabajar con JavaBeans. La versión 1.8.3 de BeanUtils depende de la CommonsLogging library .

Además, en este tutorial, he usado ToStringBuilder en la biblioteca Commons Lang para mostrar las propiedades de JavaBeans en este ejemplo.

Otro debe leer:

  • Cómo generar un volcado de subprocesos de Java mediante programación
  • Cómo anular el método equals() y hashcode() en Java

Este es un ejemplo simple de Java que demuestra la forma de copiar propiedades de un bean a otro.

CrunchifyBeanCopyExample.java

CrunchifyBeanCopyFrom.java

CrunchifyBeanCopyTo.java

Producción:

Aquí están las dependencias de maven:

Dependencia de Apache Common Beanutils Maven

Dependencia de Apache Commons Logging Maven