¿Qué es un JavaBean y por qué lo necesito? ¿Ya puedo crear todas las aplicaciones con la clase y la estructura de la interfaz? ¿Por qué necesito frijoles? ¿Y me puede dar algunos ejemplos donde los beans son esenciales en lugar de clases e interfaces?
Explique la esencialidad de un bean en el siguiente contexto:
- Aplicaciones Wep
- Aplicaciones independientes
Respuestas:
A menudo solo representan datos del mundo real. Aquí hay un ejemplo simple de un Javabean:
La implementación
Serializable
no es per se obligatoria, pero es muy útil si desea poder persistir o transferir Javabeans fuera de la memoria de Java, por ejemplo, en disco duro o en red.En, por ejemplo, una clase DAO, puede usarla para crear una lista de usuarios en la que almacene los datos de la
user
tabla en la base de datos:En, por ejemplo, una clase de Servlet, puede usarla para transferir datos de la base de datos a la IU:
En, por ejemplo, una página JSP a la que puede acceder por EL , que sigue las convenciones de Javabean, para mostrar los datos:
¿Tiene sentido? Verá, es una especie de convención que puede usar en todas partes para almacenar , transferir y acceder a datos.
Ver también:
fuente
Frijoles
Los JavaBeans están en todas partes, son una convención y casi todas las bibliotecas un poco más grandes que existen utilizan esas convenciones para automatizar las cosas. Solo algunas razones por las que se deben usar JavaBeans:
También hay, por supuesto, Enterprise JavaBeans, que son un asunto completamente diferente y no deben mezclarse con JavaBeans simples. Solo quería mencionar EJB: s porque los nombres son similares y es fácil confundirlos.
Frijoles en aplicaciones web
Si considera JavaBeans "normales" en el contexto de la aplicación web, tienen más sentido que usar zapatos en las piernas. Dado que la especificación de Servlet requiere que las sesiones sean serializables, significa que debe almacenar sus datos en la sesión como algo que es serializable, ¡por qué no convertirlo en un bean entonces! Simplemente arroje su SomeBusinessDataBean a la sesión y estará listo, ridículamente fácil, compatible con las especificaciones y conveniente.
También es fácil transferir esos datos alrededor de la aplicación, ya que JavaBeans lo ayuda a desacoplar partes de su aplicación por completo. Piense en JavaBeans como una carta y varios subsistemas de la aplicación como departamentos dentro de una corporación muy grande: el Departamento A envía una gran cantidad de datos al Departamento B, el Departamento B no sabe, ni siquiera le importa , de dónde provienen los datos solo como debería ser y solo puede abrir la carta, leer cosas de ella y hacer lo suyo en función de esos datos.
Frijoles en aplicaciones independientes
En realidad, lo anterior también se aplica a las aplicaciones independientes, la única diferencia es que puedes meterte un poco más con la interfaz de usuario, ya que las aplicaciones independientes tienen UI con estado mientras que las aplicaciones web tienen UI con estado que en algunos casos solo simulan interfaz de usuario con estado . Debido a esta diferencia, es más fácil hacer un lío con la aplicación independiente, pero eso vale otro tema y no está directamente relacionado con JavaBeans.
fuente
Un frijol no es mucho, de verdad. Para que una clase sea un "bean", todo lo que requiere es:
A eso, puede agregar captadores y establecedores para las propiedades de la clase que se ajustan a una convención de nomenclatura específica si desea que los campos sean reconocibles en ciertas circunstancias (por ejemplo, hacer de esa clase un objeto que pueda arrastrar y soltar desde un editor visual en su IDE, por ejemplo).
Puede encontrar más directamente desde Sun aquí .
fuente
Un Java Bean es un componente de software que ha sido diseñado para ser reutilizable en una variedad de entornos diferentes. No hay restricción en la capacidad de un Bean. Puede realizar una función simple, como verificar la ortografía de un documento, o una función compleja, como pronosticar el rendimiento de una cartera de acciones. Un Bean puede ser visible para un usuario final. Un ejemplo de esto es un botón en una interfaz gráfica de usuario. Un Bean también puede ser invisible para un usuario. El software para decodificar un flujo de información multimedia en tiempo real es un ejemplo de este tipo de bloques de construcción. Finalmente, un Bean puede estar diseñado para funcionar de manera autónoma en la estación de trabajo de un usuario o para trabajar en cooperación con un conjunto de otros componentes distribuidos. El software para generar un gráfico circular a partir de un conjunto de puntos de datos es un ejemplo de un Bean que puede ejecutarse localmente. Sin embargo,
En breve veremos qué cambios específicos debe hacer un desarrollador de software en una clase para que pueda utilizarse como Java Bean. Sin embargo, uno de los objetivos de los diseñadores de Java era facilitar el uso de esta tecnología. Por lo tanto, los cambios en el código son mínimos.
Ventajas de Java Beans
Una arquitectura de componentes de software proporciona mecanismos estándar para lidiar con los componentes básicos del software. La siguiente lista enumera algunos de los beneficios específicos que la tecnología Java proporciona para un desarrollador de componentes:
Aquí hay un ejemplo simple de un Javabean:
Este es un Bean real llamado MyBean que tiene un estado (la variable theValue) que será guardado y restaurado automáticamente por el mecanismo de persistencia JavaBeans, y tiene una propiedad llamada MyValue que puede ser utilizada por un entorno de programación visual. Este Bean no tiene ninguna representación visual, pero ese no es un requisito para un componente JavaBean.
fuente