8
UTILIZACION DE BEANS EN JSP. 1. Crear un proyecto WebApplication y guardarlo con el nombre de Bean 2. Para la creación del Bean es necesario ubicarse dentro del proyecto en la carpeta Sources Packages.(puede crear paquetes con la agrupación de clases en común o aplicar el concepto de capas recordar 3 capas 1.interfaz grafica 2. Logica del Negocio 3. Acesso a Datos) 3. Dentro del paquete crear una clase, dicha clase será el beans a utilizar, recordar que un bean es un objeto en el cual se definen los atributos, el método constructor debe ser vacio y se debe encapsular el objeto. Nota Se pueden crear tantos beans como sean necesarios. Ejemplo de bean asignatura public class asignatura { public String Nombre; public double nota; public void asignatura() { } public String getresultado () { if (nota <3) return "Reprueba" ; else return "Aprueba"; } public String getNombre() { return Nombre; } public void setNombre(String Nombre) { this.Nombre = Nombre; } Public double getNota()

Practica utilizacion de beans en jsp

Embed Size (px)

Citation preview

Page 1: Practica  utilizacion de beans en jsp

UTILIZACION DE BEANS EN JSP.

1. Crear un proyecto WebApplication y guardarlo con el nombre de Bean

2. Para la creación del Bean es necesario ubicarse dentro del proyecto en la carpeta Sources Packages.(puede crear paquetes con la agrupación de clases en común o aplicar el concepto de capas recordar 3 capas 1.interfaz grafica 2. Logica del Negocio 3. Acesso a Datos)

3. Dentro del paquete crear una clase, dicha clase será el beans a utilizar, recordar que un bean es un objeto en el cual se definen los atributos, el método constructor debe ser vacio y se debe encapsular el objeto. Nota Se pueden crear tantos beans como sean necesarios.

Ejemplo de bean asignatura

public class asignatura { public String Nombre; public double nota;

public void asignatura(){}

public String getresultado (){ if (nota <3) return "Reprueba" ; else return "Aprueba";}

public String getNombre() { return Nombre;}

public void setNombre(String Nombre) { this.Nombre = Nombre;}

Public double getNota() { return nota;} public void setNota(double nota) { this.nota = nota;}

}

Page 2: Practica  utilizacion de beans en jsp

Ejemplo de bean Persona

public class Persona { protected String Apellido; protected String Nombre; protected String Id; protected String Sexo; protected int Edad; public Persona() { }

public Persona(String Apellido, String Nombre, String Id, String Sexo, int Edad) { this.Apellido=Apellido; this.Nombre=Nombre; this.Edad=Edad; this.Sexo=Sexo; this.Id=Id; } public String getApellido() { return Apellido; }

public void setApellido(String Apellido) { this.Apellido = Apellido; } public String getNombre() { return Nombre; } public void setNombre(String Nombre) { this.Nombre = Nombre; } public String getId() { return Id; } public void setId(String Id) { this.Id = Id; } public String getSexo() { return Sexo; } public void setSexo(String Sexo) { this.Sexo = Sexo; } public int getEdad() {

Page 3: Practica  utilizacion de beans en jsp

return Edad; } public void setEdad(int Edad) { this.Edad = Edad; } }

4. Para utilizar el bean, es necesario crear un formulario para que el usuario suministre los datos, por lo cual se crea un archivo jsp y se guarda como el index, como es un formulario este debe contener un botón de enviar o procesar y adicional indicarle o definir la pagina que procesa el formulario y el método de envio, hemos trabajado en anteriores ejercicios con proceso.jsp, por lo cual después del incio del body del archivo index se escribe <form action="proceso.jsp" method="post">.

A continuación código html para formulario.

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title> Formulario Principal</title> </head> <body> <form action="proceso.jsp" method="post">

Nombre: <input type="text" name="nombre"><br/>Apellido: <input type="text" name="apellido"><br/>Nota: <input type="text" name="Nota">

<br/><p><input type="submit" value="Enviar"></p>

</form> </body></html>

5. Para el procesamiento del formulario se debe crear un nuevo archivo jsp que debemos llamar proceso.jsp

Page 4: Practica  utilizacion de beans en jsp

La intención es utilizar la funcionalidad del beans dentro de proceso.jsp, por lo cual debemos instanciar el objeto a utilizar esto se logra por medio de la directiva jsp:useBean

<jsp:useBean id="nota" scope="page" class="objeto.asignatura">

Donde

el usebean sirve para instanciar el objeto

el id es para identificar el objeto instanciado dentro del jsp

el Scope es para definir el ambito o accesibilidad del objeto instanciado

opciones del Scope page | request | session | application

la class es para indicar la ruta de ubicacion del objeto ainstanciar

indicar ruta paquete...subpaquete.clase.class

Se pueden crear variables para almacenar temporalmente lo que se captura en el formulario mediante el objeto implícito request

<% int not=(Integer.parseInt(request.getParameter("Nota")));%>

<% String ape=(String)request.getParameter("Apellido");%>

Se utiliza setProperty para guardar el valor dentro del atributo del objeto instanciado

<jsp:setProperty name="id_del_objeto" property="nombre_propiedad"|"*"param="nombre_parametro_de_request" | value="valor" />

Con value podemos especificar un valor para la propiedad, pero esta etiqueta es incompatible con param.

en este caso

<jsp:setProperty name="nota" property= "nota"></jsp:setProperty>

Se guarda el valor dentro del atributo deseado del objeto instanciado

<%

nota.setNota(not);

%>

Page 5: Practica  utilizacion de beans en jsp

Para consultar el valor almacenado dentro del objeto instanciado

<jsp:getProperty name="nota" property= "nota"></jsp:getProperty>

Se pueden utilizar los metodos creados para colocar y visualizar el valor de los atributos, pero como es una instancia tambien se pueden consultar las propiedades del objeto instanciado ejemplos :

El nombre de La clase

<%=nota.getClass().getName()%>

El nombre de la instancia

<%=nota.getClass().getSuperclass()%>

El valor insertado mediante el método set

<%= nota.getNota()%>

Si se desea consultar otro atributo del objeto

<jsp:getProperty name="nota" property= "resultado"></jsp:getProperty>

<%nota.getresultado(); %>

Codigo completo para proceso.jsp

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP Page</title> </head> <body> <h1> TRABAJANDO CON LOS BEANS </h1> <jsp:useBean id="personas" scope = "page" class="objeto.Persona"> <jsp:setProperty name="personas" property="apellido"></jsp:setProperty> <% String ape=(String)request.getParameter("apellido");%> <% personas.setApellido(ape);%> <jsp:setProperty name="personas" property="nombre"></jsp:setProperty>

Page 6: Practica  utilizacion de beans en jsp

<% String nom=(String)request.getParameter("nombre");%> <% personas.setNombre(nom);%> </jsp:useBean> La persona <jsp:getProperty name= "personas" property="apellido" /> <jsp:getProperty name= "personas" property="nombre" /> <br> saco un nota definitiva de : <jsp:useBean id="nota" scope="page" class="objeto.asignatura"> <% int not=(Integer.parseInt(request.getParameter("Nota")));%> <jsp:setProperty name="nota" property= "nota"></jsp:setProperty> <% nota.setNota(not); %> <jsp:getProperty name="nota" property= "nota"></jsp:getProperty> <jsp:getProperty name="nota" property= "resultado"></jsp:getProperty> la Asignatura <br> <%nota.getresultado(); %> <br> DATOS DE LA INSTANCIA DEL OBJETO ASIGNATURA <br> <p>Hemos creado una instancia del JavaBean.<br> La clase se llama <%=nota.getClass().getName()%> <p> El nombre de la instancia es <%=nota.getClass().getSimpleName()%> </p> La jerarquia de la instancia es <%=nota.getClass().getSuperclass()%> <br> </jsp:useBean> </body></html>