Curso de J2EE


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de J2EE y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


JavaBeans

Los javabeans (también llamados beans) son clases Java que se almacenan en un servidor web, que deben cumplir una serie de requisitos y que se comportan como cajas negras: sólo es necesario conocer qué hacen y decidir si interesa o no utilizarlas desde las páginas jsp.

A nivel empresarial, pueden considerarse componentes software que ofrecen a los desarrolladores de aplicaciones web una serie de utilidades sin necesidad de conocer el modo en que se obtienen (de desarrollarlos y darles la máxima utilidad se encargan otros desarrolladores o los de la propia empresa).

Ventajas del uso de javabeans:

  • Pueden ser utilizados por personas sin amplios conocimientos de Java, por ejemplo, por el equipo de diseñadores web de la empresa. Si a un diseñador le interesa, accederá al bean mediante una etiqueta adecuada; si no, no utilizará dicha etiqueta. El objetivo es dotar a las aplicaciones web, además de un diseño impactante, de alta funcionalidad


  • Facilitan la separación entre la lógica de presentación de datos de una aplicación y la lógica de negocios, es decir, entre el mostrar contenidos y el generarlos.

Como norma general no conviene llenar de scriptlets una jsp (acabas viendo visiones), sino trasladar todo el código Java que se necesite a uno o varios beans.

Estos beans serán los encargados de generar, mediante todo el código Java que haga falta, los datos que mostrará la jsp. Desde la jsp, simplemente se invocará al bean del modo adecuado y se obtendrá lo deseado.

Además, esta forma de trabajo permite reutilizar los beans en otras aplicaciones que requieran la misma funcionalidad y esto, a nivel de costes empresariales, siempre es conveniente.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de J2EE y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Requerimientos de la clase asociada a un bean

  • Debe ser pública y tener, al menos, un constructor público sin argumentos: se consigue definiendo uno explícitamente o no definiendo ninguno, ya que, por defecto, siempre se crea uno sin argumentos con el mismo modificador qua la clase.

Si se escribe en el bean un constructor sin argumentos, pueden definirse más constructores? SI.

  • Debe tener métodos públicos de tipo setXxx y getXxx que permitan la inicialización y el acceso a las variables de instancia del bean. No es necesario que aparezcan por parejas, es decir, puede haber sólo setXxx o getXxx

Estos métodos son fundamentales porque definen las propiedades del bean. Sus nombres son lo que viene a continuación del set o get cambiando la mayúscula por su correspondiente minúscula.

¿Cómo se accede a las propiedades de un bean?

Mediante

<jsp:setProperty name=”…“ property=”…“ value=”…“ />     para inicializar una propiedad
<jsp:getProperty name=”…“ property=”…”  />                  para capturar una propiedad

Aparte de métodos setters y getters asociados a propiedades, el bean puede tener otros métodos a los que también podrá accederse desde la jsp, pero empleando expresiones o scriptlets.

Ejemplo de bean:

Si un bean tiene los métodos setNombre, getNombre, setApellidos, getApellidos, getLugarNacimiento, dicho bean tiene tres propiedades: nombre y apellidos, que son de lectura y escritura, y lugarNacimiento de lectura. Aparte de estos métodos un bean puede tener otros. Ver el código de trilcejf.AficionesBean presentado después de los siguientes consejos.

CONSEJO 1: las variables de instancia relacionadas con propiedades del bean conviene que sean privadas con el fin de que sólo sean accesibles desde métodos del propio bean, típicamente los getXxx.

 

CONSEJO 2: el nombre de la clase del bean conviene que incluya la palabra bean para distinguir rápidamente clases que son beans de otras que no lo son.

A continuación se va a mostrar el código de una clase Java que es un bean:

Código del bean trilcejf.AficionesBean:

package trilcejf;

public class AficionesBean{
    private String nombre;
      private String aficion;

    public void setNombre(String nombre){
            this.nombre=nombre;
      }
      public String getNombre(){
           return nombre;
      }
      public void setAficion(String aficion){
            this.aficion=aficion;
      }
      public String getAficion(){
            return aficion;
      }
      public String getComentarioAficion(){

            if(aficion.equals("Tumbismo"))
                  return "Eres el mostruo del sofa.";

            else if(aficion.equals("Buceo"))
                  return "Cuidado con los pulpos.";

            else if(aficion.equals("Parapente"))
                  return "Ten cuidado no te estrelles.";

            else
                  return aficion+" no aparece en el listado.";
      }

    //Método no asociado a ninguna propiedad del bean.
    //Se invoca mediante una expresión ( <%= ab.despedida %>) siendo ab el nombre del bean
    //o mediante un scriptlet (<% String s=ab.despedida %>)
    public String despedida(){
        return "Adios";
    }
}


Código fuente

NOTA: se va a verificar si la clase anterior es un bean

1) ¿Cumple la primera condición?

Sí, pues la clase es pública y no define ningún constructor de forma explícita. Se considera que cuenta con el definido por defecto, es decir, uno sin argumentos y con el mismo modificador que la clase.

2) ¿Cumple la segunda condición?

Sí, pues se observan tres métodos de tipo setXxx() o getXxx().

Este bean tiene tres propiedades: nombre, aficion y comentarioAficion.

Las dos primeras son de lectura y escritura ya que se observan métodos getXxx() y setXxx(..) siendo Xxx el nombre de cada una de las propiedades sustituyendo la mayúscula que viene después de set o get por minúscula; la tercera, de lectura pues sólo tiene asociado método getXxx ().

Observar que la propiedad “comentarioAficion” no tiene variable de instancia privada asociada. Simplemente, se accederá a ella desde una página jsp.

Este bean, aparte de métodos setters y getters, cuenta con el método despedida. El acceso, desde una jsp, a métodos no asociados a propiedades se realiza mediante una expresión o un scriptlet.

Ir a http://teleformacion.fer.es/general/prt/c/javaser/12/RegistroUsuarioBean.txt  y verificar que es un bean.

Acceder también a http://teleformacion.fer.es/general/prt/c/javaser/12/Registro.txt, y observar, al final del fichero, la línea que instancia el bean y cómo se accede a sus propiedades y métodos.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de J2EE y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Si desea obtener un acceso sin restricciones a los contenidos del curso de J2EE y disfrutar de todas las herramientas del aula virtual (Videos explicativos streaming, acceso a los foros, chat, ejercicios resueltos, la ayuda del tutor, audioconferencia, estudio de grabación, test y actividades de autoevaluación, etc...) puede inscribirse completamente gratis y comenzar a realizar de forma inmediata el curso.