Foros del Web » Programación para mayores de 30 ;) » Java »

Java y mysql

Estas en el tema de Java y mysql en el foro de Java en Foros del Web. Hola muy buenas a todos Estoy en clase empezando con java, creando webs dinamicas y tengo el siguiente problema a la hora de recoger resultados ...
  #1 (permalink)  
Antiguo 28/01/2005, 01:43
 
Fecha de Ingreso: diciembre-2004
Mensajes: 278
Antigüedad: 19 años, 11 meses
Puntos: 0
Java y mysql

Hola muy buenas a todos
Estoy en clase empezando con java, creando webs dinamicas y tengo el siguiente problema a la hora de recoger resultados desde una base de datos.
Haciendo una consulta tipica i sencilla me funciona
(del estilo con.executeQuery("SELECT blablabla") )
Pero a la que lo intento realizar dentro de un bucle me da un error en la pagina Before Start result o algo asi (no estoy ahora mismo en clase y no recuerdo exactamente que decia)
La cosa es que quiero realizar una consulta dinamica, buscando el nombre de un producto a partir de su campo indentificador, el cual tengo almacenado en variables de sesion.
Algo asi:
for(i=0;i<10;i++)
{ resultProd=executeQuery("SELECT * FROM productos WHERE id_prod='"+name+"'");
}
Digo algo asi porque aun no tengo por la mano esto del java y no recuerdo muy bien las sentencias.
No se si ha quedado muy claro lo que quiero hacer, el codigo si puedo lo posteo mas tarde, ahora no puedo.
Aqui pongo el codigo
Código:
import java.io.*;
import java.text.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

import java.sql.*; //afegit per provar si es pot accedir a MySQL

public class Botiga extends HttpServlet {


    public void doGet(HttpServletRequest request,HttpServletResponse response)
        throws IOException, ServletException
    {   //Recupero la session
        HttpSession session = request.getSession();

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        out.println("<html>");
        out.println("<head>");

	    String title = "Botiga";

	    out.println("<title>" + title + "</title>");
       out.println("</head>");
       out.println("<body bgcolor=\"white\">"+
        "<b>Benvingut a la botiga virtual</b><br>"+
        "Selecciona la categoria<div align='center'>"+
        "<table border=1 width=100%><tr><td>Categories</td></tr>");
       try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (Exception e) {
            out.println("MySQLTest: unable to load driver."+e);
        }
        //out.println("Driver localitzat");
        String sDBUrl = "jdbc:mysql://localhost/botiga";
        Connection con = null;
        try
        {   //Creo conexión
            con = DriverManager.getConnection(sDBUrl);

            //out.println("Connexió oberta");

            Statement conexio = con.createStatement();
            ResultSet resulProd = conexio.executeQuery("SELECT * FROM categoria");
            //out.println("Select realitzat");
            //Mientras tenga resultados...
            while (resulProd.next()) {
                String idCat = resulProd.getString(1);
                String categoria = resulProd.getString(2);
                out.println("<tr><td>"+
                     "<a href='Selproducte?cat="+idCat+"'>"+categoria+"</a></td></tr>");
            }
//-->>>>>AQUI EMPIEZA EL CASO QUE EXPLICO----<<<<<<<<<<             
            String[] valueNames = session.getValueNames();
            if (valueNames != null && valueNames.length > 0)
            {   out.println("<table border=1>"+
                "<tr><td><b>Productes en el Carret</b></td></tr>");  
                for (int i = 0; i < valueNames.length; i++)
                {
                    String value = session.getValue(name).toString();
                    String name = valueNames[1];            
                  //Consulta que me da problemas....
                   resulProd = conexio.executeQuery("SELECT * FROM producte WHERE id_prod='"+name+"'");                    
	      String nomProd = resulProd.getString(2);
	   //Intento mostrar el resultado que obtengo de la consulta	      out.println("<tr><td>" + nomProd + " = " + value + "</td></tr>");
                }
             }
             else
             {   //out.println("No existen variables de sessió");
             }
             out.println("</div></body>");
             out.println("</html>");
             resulProd.close();
            conexio.close();
         } catch (Exception e)
          {         out.println("MySQLTest: error amb laconnxió."+e);
          } finally
          { try
            { if (con!=null) con.close();
            } catch (Exception e)
            { out.println("MySQLTest: error al tancar la connexió."+e);
            }
           }
    }
}

Última edición por clinisbut; 28/01/2005 a las 01:51
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:04.