• Jueves 25 de Abril de 2024, 22:01

Autor Tema:  Como Almacenar El Resulset En Un Vector  (Leído 2452 veces)

gamarin

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Como Almacenar El Resulset En Un Vector
« en: Jueves 14 de Octubre de 2004, 17:41 »
0
Hola, a todos... que tal como estan?..
por aqui molestandolos denuevo...

Tengo unas dudas...
1. quisiera saber como se almacenaria el resulSet obtenido de una consulta a un Vector?
2. Como puedo recorrer el Vector para ver su contenido?
3. Deacuerdo al codigo que pondo abajo, obtengo 4 numeros aleatorios los cuales me sirven para mandar apantalla los metados (que representan para el usuario preguntas) que corresponda las posisciones que me arroja el arreglo de numeros aleatorios. Pero, ¿Como puedo hacer para que las respuestas que me de el usuario, las pueda comparar con las respuestas que estarian almacenadas en el vector? ya que no quiero hacer acceso ala base de datos, por eso quiero almacenar en vector el resulset.
4. al usuario le daria 3 oprtunidades, en caso de que me falle una de las 4 preguntas, entonces que el sistema le mande un mensaje de "acceso denegado"..

CODIGO...
import java.io.*;
import java.net.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class preguntas extends HttpServlet
{
static final String connect_string = "jdbc:postgresql://localhost/votos2";
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}

protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
String control2= request.getParameter("valor1");
response.setContentType("text/vnd.wap.wml");
PrintWriter out = response.getWriter();
Connection conn=null;
Statement st = null;
try
{
// Carga del driver JDBC
Class.forName("org.postgresql.Driver");
// Conexiòn con la base de datos
if (conn != null)
{
conn.close();
}
conn = DriverManager.getConnection (connect_string,"postgres","");
conn.setAutoCommit(true);
}catch (Exception e)
{
out.println("<wml>");
out.println("<card id=\"card16\">");
out.println("<p>");
out.println("<br>error"+e);
out.println("</br>");
out.println("</p>");
out.println("</card>");
out.println("<wml>");
}
try
{
Statement stmt = conn.createStatement();
ResultSet conjuntoResultados=stmt.executeQuery("SELECT * FROM preguntas where no_ctrl=\'"+control2+"\'");
ResultSetMetaData metaDatos = conjuntoResultados.getMetaData();
int numeroDeColumnas = metaDatos.getColumnCount();
int alea[] = new Numero().getAleatorios(4,10);
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");

for (int i=0; i < alea.length; i++)
{
switch(alea)
{
case 3:
out.println("<small>");
out.println(metaDatos.getColumnName(3)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*N\" name=\"edad\" maxlength=\"2\"/>");
break;
case 4:
out.println("<small>");
out.println(metaDatos.getColumnName(4)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*N\" name=\"no_telefono\" maxlength=\"10\"/>");
break;
case 5:
out.println("<small>");
out.println(metaDatos.getColumnName(5)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*M\" name=\"direccion\" maxlength=\"10\"/>");
break;
case 6:
out.println("<small>");
out.println(metaDatos.getColumnName(6)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*N\" name=\"c_p\" maxlength=\"5\"/>");
break;
case 7:
out.println("<small>");
out.println(metaDatos.getColumnName(7)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*M\" name=\"ciudad\" maxlength=\"10\"/>");
break;
case 8:
out.println("<small>");
out.println(metaDatos.getColumnName(8)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*N\" name=\"estatura\" maxlength=\"4\"/>");
break;
case 9:
out.println("<small>");
out.println(metaDatos.getColumnName(9)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*M\" name=\"deporte_favorito\" maxlength=\"10\"/>");
break;
default:
out.println("<small>");
out.println(metaDatos.getColumnName(10)+ ":");
out.println("</small>");
out.println("<input type=\"texto\" format=\"*M\" name=\"curp\" maxlength=\"18\"/>");
}
}
out.println("</p>");
out.println("</card>");
out.println("</wml>");
}catch (Exception e)
{
out.println("<wml>");
out.println("<card id=\"card27\">");
out.println("<p>");
out.println("<br>error ==> "+e);
out.println("</br>");
out.println("</p>");
out.println("</card>");
out.println("</wml>");
}
out.close();
}
public String getServletInfo() {
return "Descripción";
}
public void destroy()
{
}
}



***** PORFAVOR NECESITO DE SU AYUDA...*****



SALUDOS : :huh:  :lol:  ayuda plis

nicokiki

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Como Almacenar El Resulset En Un Vector
« Respuesta #1 en: Jueves 14 de Octubre de 2004, 18:56 »
0
Hola!!!!!1

De antemano te digo q al ResultSet lo podes meter en un Vector. Ahora, la pregunta es para q??? Si vos queres comparar, al metodo q hace la consulta le deberias pasar las opciones que ingreso el usuario y ahi validar si el tipo esta registrado o no.

Salu2!!!!!!

gamarin

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: Como Almacenar El Resulset En Un Vector
« Respuesta #2 en: Viernes 15 de Octubre de 2004, 18:13 »
0
Hola.. amigos.... :hola:

lo que pasa es que dspues de que autentifique al usuario, tengo que hacerle 4 preguntas, para lo cual hay una tabla en la BD que ya contiene 10 campos "preguntas" (edad, peso, estatura,curp, etc..)y sus respectivas respuestas por lo que despues de autentificar al usuario, se debe ejecutar el servlet de preguntas, asi que el resulSet que se tiene de la consulta necesito almacenarlo en un vector, esto con la finalidad de que solo una vez haga conexion ala BD, pues necesito darle tres oportunidades al usuario de contestar bien las preuntas que le presente. ( como preguntas considero los metadatos de la tabla " edad, peso, estatura, curp. etc")  

alguna otra sugerencia para hacer esto?..



espero sus respuestas..

saludos... :kicking: