Sie sind auf Seite 1von 13

UNIDAD 3: JAVA JSP ARREGLOS TEMA 3: JAVA JSP ARREGLOS TIPO LISTA Un arreglo tipo lista se define como

una variable que permite almacenar un conjunto de datos del mismo tipo organizados en una sola columna y uno o mas renglones. Tambin reciben el nombre de vectores en lgebra o arreglos unidimensionales en programacin. Los procesos normales con una lista o con sus elementos, incluyen declarar toda la lista, capturar sus elementos, desplegarlos, realizar operaciones con ellos, desplegarlos, etc. Para declarar una lista se usa el siguiente formato; tipodato nomlista[]= new tipodato[cant elementos]; SORPRESA, no existen en java jsp arreglos o listas tradicionales lo que existe es un objeto, por tanto se debera usar el operador new antes de empezar a procesar el arreglo, la ventajas son: a) estas listas pueden usar el metodo length,(ejemplo nomlista.length;) para conocer el tamao de la misma. int edades[]= new int[12]; float sueldos[]=new float[5]; String municipios[]={tijuana,tecate,ensenada}; en este ulimo caso, observar que tambien pueden crearse listas ya con tamao fijo e inicializadas o cargadas notas: Recordar tambin que la primera posicin o rengln en una lista es la posicin o rengln 0 (cero). Prog10 jsp
<%! int edad[]=new int[5], ren=0; %> <% String temp1=request.getParameter("INSERTAR"); if(temp1==null)temp1=" "; if(temp1.compareTo("insertar")==0){ if(ren < 5){

edad[ren]=Integer.parseInt(request.getParameter("EDAD")); ren=ren+1;}; if(ren==5){out.print("ARREGLO LLENO");}; }; if(request.getParameter("SUMAR") != null ) { // operaciones for(ren=0; ren<=4; ren++) edad[ren]=edad[ren]* 12; // DESPLEGANDO EN OBJETO LISTA DE HMTL CON BULLETS FOR NORMAL out.println("EDADES EN MESES"); out.println("<UL>"); for(ren=0;ren<=4;ren++) {out.println("<LI>"+edad[ren]); }; out.println("</UL>"); // DESPLEGANDO EN OBJETO LISTA DE HMTL FOR NORMAL out.println("<OL>"); for(ren=0; ren<=4; ren++) { out.println("<LI>"+edad[ren]); }; out.println("</OL>"); // DESPLEGANDO USANDO OBJETO TABLE DE HMTL FOR NORMAL out.println("<table border=2><tr><th>EDADES EN MESES</th></tr>"); for(ren=0; ren<=4; ren++) { out.println("<tr><td>"+edad[ren]+"</td></tr>"); }; }; // construyendo forma dinamica out.println("<FORM ACTION=prog10.jsp METHOD=post>"); out.println("DAME EDAD:"+ren+"<INPUT TYPE=TEXT NAME=EDAD>"); out.println("<INPUT TYPE=SUBMIT NAME=INSERTAR VALUE=insertar ><BR>"); out.println("<INPUT TYPE=SUBMIT NAME=SUMAR VALUE=sumar><BR>"); out.println("</FORM>");

%>

Corrida:

notas: Se estan usando dos SUBMIT en el prrograma, el primero de ellos para insertar los elementos en la lista y el segundo para convertirlos a meses. Es por esta razon que primero se lee el TEXTBOX INSERTAR y si trae null se cambia por un especio en blanco, la razon es porque java no permite comparar strings contra null. Se esta usando una variable contador llamada reng para controlar tantos los indices de la lista o vector asi como para controlar la cantidad de elementos que se van a insertar en el arreglo. Para el caso de operaciones y comparaciones con todos los elementos de la lista a la vez, se deber usar un ciclo for con una variable entera llamada rengln misma que tambin se usa como ndice de la lista.

Recordar que todos los datos internos de la lista estarn almacenados en la memoria ram del computador, para despliegues se pueden usar varios tipos de objetos y controles de html(LIST y TABLE revisar tutorial de html). Para este programa ejemplo se usaron los dos casos mas comunes de listas en html (UL y OL) ver tutorial y tambien se uso Table de html, por supuesto que en sus programas normales deberan usar un solo caso de estos tres de preferencia el TABlE. Para inicializar una lista se debe usar el siguiente formato: tipodato nomlista[]={lista de valores}; ej; int edad[4]={15,16,17,18}; float sueldo[3]={40.85, 65.30, 33.33}; String *ciudad[]={tecate, tijuana, mexicali, rosarito, ensenada}; TAREAS PROGRAMACION JAVA JSP 1.- Capturar y desplegar 5 precios de mercancias cualesquiera. 2.- Capturar 4 sueldos, desplegarlos aumentados en un 25%. 3.- Capturar los datos de 5 mercancias comprados en una tienda, incluyendo nombre, precio y cantidad en sus 3 listas respectivas( se vale inicializar los arreglos de nombre y precio), despus calcular una cuarta lista con el gasto total por cada producto desplegarlo todo e incluir tambin el gran total.

*/*/*/*

UNIDAD 4: JAVA JSP PROCEDIMIENTOS Y FUNCIONES TEMA 5: JAVA JSP ARREGLOS COMO PARAMETROS Para pasar un arreglo completo como parametro a un procedimiento a una funcin solo se manda el nombre del arreglo sin corchetes e indices, en el procedimiento o funcin que recibe solo se declara un arreglo del mismo tipo y se puede usar el mismo o diferente nombre del arreglo sin corchetes e indices. Sin embargo es conveniente aclarar, que a diferencia de variables escalares normales, java no genera una nueva variable en memoria ni tampoco copia los datos al arreglo que recibe, en su lugar java sigue usando los datos que estan en el arreglo original, es por esta razn que cambios que se le hagan a los datos del arreglo que recibe realmente se esta haciendo al arreglo original como lo muestra el siguiente ejemplo:

Prog15 jsp
<%! //recordar que r es global int r; void decl1(int alfa[]) { for(r=0;r<=2;r++) alfa[r]=alfa[r]+10; }; %> <% // no usar objetos request y out fuera de scriptlet // porque no estan creados por java todavia if(request.getParameter("OK") != null) { int eta[]={3,4,5}; decl1(eta); for(r=0;r<=2;r++) out.println("eta="+eta[r]+"<br>"); }; // construyendo forma dinamica out.println("<FORM ACTION=prog15.jsp METHOD=post>"); out.println("<INPUT TYPE=SUBMIT NAME=OK VALUE=evento1 ><BR>"); out.println("</FORM>"); %>

corrida prog15 jsp

Es de recordar que los cambios que le hagan al arreglo dentro de la funcin se reflejaran en el arreglo original, es por esto que si se quiere modificar un arreglo en una funcin no hay necesidad de regresar ningun valor. TAREAS PROGRAMACION JAVA JSP 1.- Inicializar 10 edades en el principal mandar la lista a un procedimiento que la convierte a meses, desplegar en principal. 2.- Capturar un arreglo de 7 ciudades en principal, sortear u ordenar o alfabetizar (sorteo burbuja) en un procedimiento y desplegar en principal tanto la lista original como la lista ordenada.

*/**

Jsp -> Mi primera aplicacin


septiembre 9, 2011
En este minitutorial pretendo explicar mediante un ejemplo bsico como imprimir datos de un vector en Jsp.Espero que sea de mucha ayuda con para los que recin comienza a programar en Jsp. Asi debera lucir nuestro ejemplo.

Pasos: 1. Crear un proyecto en java Web 2. Asignarle un nombre(en mi caso yo lo nombre:MiprimerJsp) 3. Crear un archivo Jsp dentro de WebPages(Nuevo->Jsp)

Luego 1. Crear un paquete dentro de la carpeta SourcePackages y nombrarla Objetos. 1. Crear una clase llamada Persona. 2. Escribe el siguiente cdigo.(Lo que hacemos es poner los atributos de la clase.)

package Objetos; /** * * @author Admin */ public class Persona { private String Nombre; private String Ciudad; private int Id; public Persona(String Nombre,String Ciudad,int Edad){ this.Nombre=Nombre; this.Ciudad=Ciudad; this.Id=Edad; } public String getCiudad(){ return Ciudad; } public String getNombre(){ return Nombre; } public int getId(){ return Id; } public void setId(int Id){ this.Id=Id; } public void setNombre(String Nombre){ this.Nombre=Nombre; } public void setCiudad(String Ciudad){

this.Ciudad=Ciudad; } }

Ahora finalmente en el archivo jsp que creamos llamado index.jsp escribimos el siguiente cdigo.
<%@ page contentType="text/html;" pageEncoding="UTF-8" import="Objetos.Persona" import="java.util.Vector" errorPage=""%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP Page</title> </head> <body> <% Vector<Persona> vecPer=new Vector<Persona>(); vecPer.add(new vecPer.add(new vecPer.add(new vecPer.add(new vecPer.add(new vecPer.add(new vecPer.add(new vecPer.add(new Persona("Wilfredo","Machala",23)); Persona("Anita","Pasaje",28)); Persona("Sebastian","Arenillas",25)); Persona("Raul","Santa Rosa",21)); Persona("Leonardo","Pasaje",25)); Persona("Victor","Huaquillas",27)); Persona("Derek","Machala",20)); Persona("Raul","Guayaquil",18));

%> <h1>Formualrio</h1> <table border="1"> <thead> <tr> <th>Nombre Completo</th> <th>Ciudad</th> <th>Edad</th> </tr> </thead> <tbody> <% for(int k=0;k<vecPer.size();k++){ %> <tr> <td><%=vecPer.elementAt(k).getNombre()%></td> <td><%=vecPer.elementAt(k).getCiudad() %></td> <td><%=vecPer.elementAt(k).getId()%></td> </tr> <%}%> </tbody> </table> </body> </html> En realidad solo importamos estos: import="Objetos.Persona" import="java.util.Vector".

Miren ahora como creamos el vector de la clase persona , lo llenamos e imprimimos.

Cualquier duda , no duden en comentar amigos.Ah y tambin puedes sugerir de que temas deseas que publique. Link de descarga del ejemplo:

Descargar Ejemplo.
About these ads

*/*/*/

Archivo index.jsp
<%-Document : index.jsp Created on : 28-oct-2013, 22:35:01 Author : KevinArnold

--%> < %@page import="PaqueteConexion.DBConexion"%> < %@page contentType="text/html" pageEncoding="UTF-8"%> < !DOCTYPE html> < html> < head> < meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> < title>JSP Page</title> < /head> < body> < h1>Hello World!</h1> <% if(DBConexion.conexion()!=null) { %> < p>La conexin se realiz de forma correcta</p> <% } else { %> < p>Hubo un error en la conexin</p> <% } %> < /body> < /html>

Archivo DBConexion.java
* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package PaqueteConexion; import com.mysql.jdbc.Connection; import com.mysql.jdbc.exceptions.MySQLDataException; import java.sql.DriverManager; import java.sql.SQLException; /** * * @author KevinArnold */ public class DBConexion { public static Connection conexion() { Connection conexion=null; try {

Class.forName("com.mysql.jdbc.Driver"); String servidor="jdbc:mysql://localhost/dbappsivak"; String usuario="root"; String contrasenia="030191"; conexion=(Connection)DriverManager.getConnection(servidor, usuario, contrasenia); } catch(ClassNotFoundException ex) { System.out.println(ex.getMessage()); } catch(MySQLDataException ex) { System.out.println(ex.getMessage()); } catch(SQLException ex) { System.out.println(ex.getMessage()); } catch(Exception ex) { System.out.println(ex.getMessage()); } finally { return conexion; } } }

Das könnte Ihnen auch gefallen