Hola, que tal. ya le hice como me comentas,, solo que el siguinte codigo que te mando, pues no me hace lo de las preguntas aleatorias, lo que trato de hacer es que los metadatos de la tablas se conviertasn en preguntas, para que sea mas facil identificar las respuestas, asi que con el codigo presento los metadatos, no se si es correcto el llenado del vector como lo hago, ya que le estoy pasando el contenido de la tupla que se obtiene de la consulta (segun yo),
los metadatos los utilice como preguntas, me podrias ayudar para que los numeros aleatorios resultantes sean los numeros de los metadatos y luego pues los presente en pantalla de uno por uno,
ejemplo : ( si el primer nuemero aleatorio es 4 esntonces la pregunta corresponderia al numero 4 de los metadatos, por lo tanto presento en pantalla en metadato 4( edad), lo malo es que no presenta todas juntas, solo presenta 1 pregunta, y pues necesito otra vez reeleer el servlet para que me genere otra (esto es incorrecto)..
Ademas, como le hago para comparar las posibles respuestas, con las que ya tengo en el vector y ya no haga coneccion a la BD?.
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:odbc:conectar";
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
public void destroy()
{
}
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;
try
{
// Carga del driver JDBC
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// Class.forName("org.postgresql.Driver");
// Conexión con la base de datos
if (conn != null)
{
conn.close();
}
conn = DriverManager.getConnection (connect_string,"","");
// conn = DriverManager.getConnection (connect_string,"postgres","");
conn.setAutoCommit(true);
}catch (Exception e)
{
out.println("<wml>");
out.println("<card id=\"card15\">");
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 ();
System.out.println("oaqui!");
ResultSet conjuntoResultados=stmt.executeQuery("SELECT * FROM preguntas where no_ctrl=\'"+control2+"\'");
ResultSetMetaData metaDatos = conjuntoResultados.getMetaData();
int numeroDeColumnas = metaDatos.getColumnCount();
int alea[] = new Numero().getAleatorios(5,10);
for (int i=0; i < alea.length; i++)
{
switch(alea
)
{
case 1:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(1));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 2:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(2));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 3:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(3));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 4:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(4));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 5:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(5));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 6:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(6));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 7:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(7));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 8:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(8));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
case 9:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(9));
out.println("</p>");
out.println("</card>");
out.println("</wml>");
break;
default:
out.println("<wml>");
out.println("<card id=\"card18\">");
out.println("<p>");
out.println(metaDatos.getColumnName(10));
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>");
}
// conn.close();
out.close();
}
public String getServletInfo() {
return "Descripción";
}
}
espero tu respuesta.. saludos....
porfavor