Antes de examinar herramientas mas avanzadas de JSP, vamos a hablar un poco de lo que son JavaBeans.
Un JavaBean, algunas veces llamado simplemente bean, es una clase que cumple con dos reglas muy simples.
- Incluye un constructor publico sin argumentos, también conocido como constructor por default.
- Provee métodos get, set, e is para las propiedades. El método is es usado en lugar del método get para propiedades booleanas.
Eso es todo.
En realidad la única regla requerida es tener un constructor sin argumentos, pero una clase sin propiedades no es muy útil, verdad?
Algunas personas dicen que un JavaBean también debe de implementar la interfaz Serializable. Esto no es realmente necesario, pero no es una mala idea, además de que es muy fácil de hacer.
Veamos la clase Product de nuestro ejemplo anterior.
package ServletSample.Business; public class Product { private int id; private String name; private float price; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public float getPrice() { return price; } public void setPrice(float price) { this.price = price; } public Product(){ this.id = -1; this.name = ""; this.price = 0f; } public Product(int id, String name, float price) { this.id = id; this.name = name; this.price = price; } }
Esta clase es un JavaBean porque el primer constructor no toma ningún argumento. También defino métodos get y set para las propiedades. En este ejemplo, mis propiedades son Id, Name, y Price.
Nota sobre constructores: Si no defines ningún constructor en tu clase, un constructor sin argumentos es asumido por el compilador. Asà que también podrÃa definir mi clase asÃ, y seguirÃa siendo considerada un JavaBean.
package ServletSample.Business; public class Product implements java.io.Serializable{ private int id; private String name; private float price; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public float getPrice() { return price; } public void setPrice(float price) { this.price = price; } }
Observa que no hay ningún constructor en esta ocasión.
También observa como el JavaBean es ahora serializable. La interfaz Serializable no requiere que implementos ningún método.
En el siguiente post haremos algunas cosas interesantes con JavaBeans.
Por favor deja tu comentario si tienes alguna pregunta.