CONCEPTO DE JAVABEAN
Un JavaBean
o bean es un componente hecho en software que se puede reutilizar y que puede
ser manipulado visualmente por una herramienta de programación en lenguaje
Java
Por lo cual,
se define un interfaz para el momento del diseño (design time) que permite a la
herramienta de programación o IDE, interrogar (query) al componente y conocer
las propiedades (properties) que define y los tipos de sucesos (events) que
puede generar en respuesta a diversas acciones.
Aunque los
beans individuales pueden variar ampliamente en funcionalidad desde los más
simples a los más complejos, todos ellos comparten las siguientes
características:
1.
Introspection: Permite analizar a la herramienta de programación o IDE como trabaja el
bean
2.
Customization: El programador puede alterar la apariencia y la conducta del bean.
3.
Events:
Informa al IDE de los sucesos que puede generar en respuesta a las acciones del
usuario o del sistema, y también los sucesos que puede manejar.
4.
Properties: Permite cambiar los valores de las propiedades del bean para
personalizarlo (customization).
5.
Persistence: Se puede guardar el estado de los beans que han sido personalizados por
el programador, cambiando los valores de sus propiedades.
Un bean es
una clase que obedece ciertas reglas:
1. tiene que tener un constructor por
defecto (sin argumentos)
2. tiene que tener persistencia, es
decir, implementar el interface Serializable.
3. tiene que tener introspección
(instrospection).
Los IDE reconocen ciertas pautas de diseño,
nombres de las funciones miembros o métodos y definiciones de las clases, que
permiten a la herramienta de programación mirar dentro del bean y conocer sus
propiedades y su conducta.
Propiedades
Una
propiedad es un atributo del JavaBean que afecta a su apariencia o a su
conducta. Por ejemplo, un botón puede tener las siguintes propiedades: el
tamaño, la posición, el título, el color de fondo, el color del texto, si está
o no habilitado, etc.
Las
propiedades de un bean pueden examinarse y modificarse mediante métodos o
funciones miembro, que acceden a dicha propiedad, y pueden ser de dos tipos:
getter method: lee el valor de la propiedad
setter method: cambia el valor de la propiedad.
Un IDE que
cumpla con las especificaciones de los JavaBeans sabe como analizar un bean y
conocer sus propiedades. Además, crea una representación visual para cada uno
de los tipos de propiedades, denominada editor de propiedades, para que el
programador pueda modificarlas fácilmente en el momento del diseño.
Cuando un
programador, coge un bean de la paleta de componentes y lo deposita en un
panel, el IDE muestra el bean sobre el panel. Cuando seleccionamos el bean
aparece una hoja de propiedades, que es una lista de las propiedades del bean,
con sus editores asociados para cada una de ellas.
El IDE llama
a los métodos o funciones miembro que empiezan por get, para mostrar en los
editores los valores de las propiedades. Si el programador cambia el valor de
una propiedad se llama a un método cuyo nombre empieza por set, para actualizar
el valor de dicha propiedad y que puede o no afectar al aspecto visual del bean
en el momento del diseño.
Las
especificaciones JavaBeans definen un conjunto de convenciones (design
patterns) que el IDE usa para inferir qué métodos corresponden a propiedades.
Cuando el
IDE carga un bean, usa el mecanismo denominado reflection para examinar todos
los métodos, fijándose en aquellos que empiezan por set y get. El IDE añade las
propiedades que encuentra a la hoja de propiedades para que el programador
personalice el bean.
Propiedades
simples
Una
propiedad simple representa un único valor.
Propiedades
indexadas
Una
propiedad indexada representa un array de valores.
Propiedades ligadas (bound)
Los objetos de una clase que tiene una propiedad ligada
notifican a otros objetos (listeners) interesados, cuando el valor de dicha
propiedad cambia, permitiendo a estos objetos realizar alguna acción. Cuando la
propiedad cambia, se crea un objeto (event) que contiene información acerca de
la propiedad (su nombre, el valor previo y el nuevo valor), y lo pasa a los
otros objetos (listeners) interesados en el cambio.
Propiedades restringidas
(constrained)
Una propiedad restringida es similar a una propiedad ligada
salvo que los objetos (listeners) a los que se les notifica el cambio del valor
de la propiedad tienen la opción de vetar (veto) cualquier cambio en el valor
de dicha propiedad. (Este tipo de propiedad no se estudiará en este capítulo
COMO INSERTAR UN
JAVABEAN
Como primer paso vedemos de tener la carpeta donde contendrán los beans.
Abrimos el interfaz donde lo añadiremos y abrimos la paleta.
Le damos click izquierdo en cualquier lado de la paleta.
Nos aparecera una pantalla y le damos donde dice add from jar...
Seleccionamos la carpeta en donde se encuentran los beans.
Seleccionamos la carpeta jars.
Seleccionamos el componente que deceamos aderir
Después de seleccionarlo lo volvemos a seleccionar y le damos en siguiente.
Por ultimo le seleccionamos been y precionamos en finalizar.
El resultado es este.