elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Conectarme a MySQL por Servlet
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Conectarme a MySQL por Servlet  (Leído 8,622 veces)
Aikanáro Anário


Desconectado Desconectado

Mensajes: 694



Ver Perfil WWW
Conectarme a MySQL por Servlet
« en: 12 Abril 2012, 06:01 am »

Estoy trabajando con Eclipse EE y Tomcat 7 en el localhost.
Ahora mismo estoy tratando de hacer que el login funcione.

Tengo mi clase conexión:

Código
  1. package edu.itla.diaz.modelo;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.SQLException;
  6.  
  7. public class Conexion {
  8.  
  9. private static Connection conexion = null;
  10.  
  11. private Conexion() {
  12.  
  13. }
  14.  
  15. public static Connection getInstancia() {
  16. if (conexion == null) {
  17. try {
  18. Class.forName("com.mysql.jdbc.Driver");
  19.  
  20. conexion = DriverManager.getConnection(
  21. "jdbc:mysql://localhost/Esquema_VentaLibros","gustavo", "123581321");
  22.  
  23. } catch (SQLException sqlex) {
  24. sqlex.printStackTrace();
  25. } catch(ClassNotFoundException cnfex) {
  26. cnfex.printStackTrace();
  27. }
  28. return conexion;
  29. }
  30. else {
  31. return conexion;
  32. }
  33. }
  34.  
  35. }
  36.  

Tengo una clase donde pienso poner todas las consultas que vaya necesitar. Ahora mismo solo tengo el método para hacer login:
Código
  1. package edu.itla.diaz.modelo;
  2.  
  3. import java.sql.PreparedStatement;
  4. import java.sql.SQLException;
  5.  
  6. public class ListaDeQueries {
  7.  
  8. private static PreparedStatement pst;
  9. private static String query = "";
  10.  
  11. public static boolean loguear(String nombreUsr, String claveUsr) {
  12. query = "select * from Usuario where nombreUsr = ? and claveUsr = ?";
  13.  
  14. try {
  15. pst = Conexion.getInstancia().prepareStatement(query);
  16. pst.setString(1, nombreUsr);
  17. pst.setString(2, claveUsr);
  18. pst.executeQuery();
  19. return true;
  20. } catch (SQLException e) {
  21. e.printStackTrace();
  22. return false;
  23. }
  24.  
  25. }
  26.  
  27. }
  28.  

Y tengo un servlet con el método para loguearse (doPost) que dependiendo si el login es correcto o no presenta uno u otro JSP.

Código
  1. protected void doPost(HttpServletRequest request, HttpServletResponse response)
  2. throws ServletException, IOException {
  3. if(ListaDeQueries.loguear(request.getParameter("usuario"), request.getParameter("clave"))) {
  4. request.getRequestDispatcher("Bienvenido.jsp").forward(request, response);
  5. }
  6. else {
  7. request.getRequestDispatcher("AccesoDenegado.jsp").forward(request, response);
  8. }
  9. }
  10.  

Pero me da el error de ClassNotFoundException: com.mysql.jdbc.Driver. Ya importé el Jar correctamente en el proyecto. Al menos que haya que hacer algo distinto cuando se está trabajando con Java EE (es la primera vez que lo uso), pero si no debe de estar bien. Fui a propiedades del proyecto > Java Build Path > Libraries > Add externals JARs... y pusé el jar de mysql que he usado en otros proyectos (este: http://www.mysql.com/downloads/connector/j/). No sé porque me da ese error.

Talvez es porque mi clase conexión tambien debe ser un Servlet, o sea extender de extends HttpServlet y tener los métodos doPost y doGet???


En línea

Lo que faltaba en internet: http://binar10s.blogspot.com/
visualfree

Desconectado Desconectado

Mensajes: 201


Ver Perfil
Re: Conectarme a MySQL por Servlet
« Respuesta #1 en: 12 Abril 2012, 08:58 am »

donde has dejado el jar?...

te recomiendo dejarlo en lib ...


En línea

Aikanáro Anário


Desconectado Desconectado

Mensajes: 694



Ver Perfil WWW
Re: Conectarme a MySQL por Servlet
« Respuesta #2 en: 12 Abril 2012, 18:09 pm »

donde has dejado el jar?...

te recomiendo dejarlo en lib ...

¿En lib? El jar está en la carpeta donde se descomprimio el conector que bajé de la página de MySQL, y esa carpeta está dentro de la carpeta del proyecto de Eclipse.
En línea

Lo que faltaba en internet: http://binar10s.blogspot.com/
Proteus1989

Desconectado Desconectado

Mensajes: 184



Ver Perfil WWW
Re: Conectarme a MySQL por Servlet
« Respuesta #3 en: 12 Abril 2012, 21:47 pm »

¿En lib? El jar está en la carpeta donde se descomprimio el conector que bajé de la página de MySQL, y esa carpeta está dentro de la carpeta del proyecto de Eclipse.

Pero está importado como external Jar al proyecto no?
En línea

Aikanáro Anário


Desconectado Desconectado

Mensajes: 694



Ver Perfil WWW
Re: Conectarme a MySQL por Servlet
« Respuesta #4 en: 12 Abril 2012, 21:59 pm »

Pero está importado como external Jar al proyecto no?

Sí.


donde has dejado el jar?...

te recomiendo dejarlo en lib ...

Hubieras sido más específico. El conector (la librería jar de MySQL) lo estaba importando como antes dije, agregandolo desde Add External JARs... en el Java Build Path, pero así no funciona, lo que hay que hacer es copiar el .jar del conector MySQL en la carpeta WebContent > WEB-INF > lib del proyecto y ahí funcionó.
« Última modificación: 20 Abril 2012, 03:33 am por Aikanáro Anário » En línea

Lo que faltaba en internet: http://binar10s.blogspot.com/
lluvplay

Desconectado Desconectado

Mensajes: 27



Ver Perfil
Re: Conectarme a MySQL por Servlet
« Respuesta #5 en: 19 Abril 2012, 15:27 pm »

Hola respetado amigo !!! Creo que tu problema se genera cuando usas el driver de la pagina de Mysql !!!

estas trabajando
Citar
Class.forName("com.mysql.jdbc.Driver");
y eso es para sql !!! Según lo que por mi practica concierne ( Anexo ningún documento me ha dicho eso solo fue jugando con mi necesidad de conocimiento asi que no se el porque de esto )

*Si estas usando Mysql debería ser
Citar
Class.forName("org.gjt.mm.mysql.Driver");
Espero que puedas solucionar tu problema :D
En línea

* Determinismo Causal !! Estamos Programados Para Necesitar Respuestas!!

* No deberías copiar un código, sin antes haber comprendido porque funciona de esa manera !
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
problemas al conectarme con mysql « 1 2 »
PHP
Tyrz 10 5,260 Último mensaje 1 Diciembre 2006, 23:05 pm
por Ertai
Problema al conectarme a Mysql
Bases de Datos
diego_lp 6 7,522 Último mensaje 4 Diciembre 2011, 00:38 am
por brandsmt26
Conectarme a MySQL !
Bases de Datos
llAudioslavell 3 4,894 Último mensaje 18 Agosto 2011, 06:30 am
por llAudioslavell
Meter datos en MySQL a traves de un servlet. Que esta mal? « 1 2 3 »
Java
manolazo 20 14,937 Último mensaje 26 Febrero 2013, 01:41 am
por 1mpuls0
conectarme a BD mysql
Nivel Web
mysterio069 2 2,652 Último mensaje 17 Junio 2015, 21:07 pm
por Shell Root
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines