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

No puedo guardar informacion en MySQL

Estas en el tema de No puedo guardar informacion en MySQL en el foro de Java en Foros del Web. Hola, tengo un incoveniente no puedo guardar datos en la base de datos, nose que parte del codigo puede llegar a estar mal. No puedo ...
  #1 (permalink)  
Antiguo 26/01/2010, 19:08
 
Fecha de Ingreso: abril-2009
Ubicación: Santa Fe, Capital
Mensajes: 38
Antigüedad: 15 años, 7 meses
Puntos: 0
Pregunta No puedo guardar informacion en MySQL

Hola, tengo un incoveniente no puedo guardar datos en la base de datos, nose que parte del codigo puede llegar a estar mal.

No puedo guardar los datos que coloco en un formulario

Para guardar envio el formario con submit, pero no me guarda nada creo que no me crea un id en la tabla, actualizar me funciona pero insertar(GUARDA nuevos datos) no.

Vista

Código java:
Ver original
  1. <&#37;@ page language="java" contentType="text/html; charset=ISO-8859-1"
  2.     pageEncoding="ISO-8859-1"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <%@page import="java.util.ArrayList,java.util.Iterator,java.util.List"%>
  5. <%@page import="modelo.Musica"%>
  6. <%!List<Musica> musicas; %>
  7. <html>
  8. <head>
  9.     <script type="text/javascript">
  10.         function enviarFormulario(idOperacion,idValor){
  11.             document.getElementById("operacion").value = idOperacion;
  12.             document.getElementById("id").value = idValor;
  13.             document.getElementById('formModelo').submit();
  14.         }
  15.     </script>
  16.  
  17.     <jsp:useBean id="musica" class="modelo.Musica" scope="request"/>
  18.     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  19.     <title>Musica</title>
  20. </head>
  21.  
  22. <body bgcolor="#DCDCDC">
  23.     <form name="formModelo" method="post" action="./Musica">
  24.    
  25.         <input type="text" name="id" id="id" maxlength="20" size="20"
  26.                value="<jsp:getProperty name="musica" property="id"/>">
  27.         <input type="text" name="operacion" id="operacion" value="GUARDAR">
  28.    
  29. <table>
  30.     <tr>
  31.     <th>Tema: </th>
  32.     <td>
  33.     <input type="text" name="nombre"
  34.     value="<jsp:getProperty property="nombre" name="musica"/>">
  35.     </td>
  36.     <th>Duraci&oacute;n: </th>
  37.     <td>
  38.     <input type="text" name="duracion"
  39.     value="<jsp:getProperty property="duracion" name="musica"/>">
  40.     </td>
  41.     </tr>
  42. </table>
  43.  
  44.         <input value="Guardar" type="submit" value="GUARDAR">
  45.    
  46.     </form>
  47.  
  48. <!-- Lista de la base de datos -->
  49.  
  50. <%
  51. try{
  52.     musicas = (List<Musica>)request.getAttribute("musicas");
  53.     if(musicas != null && musicas.size()>0){
  54.         int i = 0;
  55.         while(musicas.size()>i){
  56.             Musica mus =(Musica)musicas.get(i);
  57.             %>
  58.             <%=mus.getNombre()%>
  59.             <a href="#" onclick="enviarFormulario('ELIMINAR','<%=mus.getId()%>')"> eliminar </a> &nbsp;&nbsp;|&nbsp;&nbsp;  
  60.             <a href="#" onclick="enviarFormulario('MODIFICAR','<%=mus.getId()%>')"> modificar </a>  
  61.                    
  62.             <br>
  63.         <%
  64.         i++;
  65.         }
  66.     }
  67. }catch(Exception e){
  68.     e.printStackTrace();
  69. }
  70. %>
  71.  
  72. </body>
  73. </html>

Controler

Código java:
Ver original
  1. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  2.         Musica musica = new Musica();
  3.         try{
  4.             String operacion = request.getParameter("operacion");
  5.             Integer id = null;
  6.             if(!request.getParameter("id").equals("null")&&!request.getParameter("id").equals(" ")){
  7.                 id = new Integer(request.getParameter("id"));
  8.             }
  9.            
  10.            
  11.             /*Nombre*/   musica.setNombre(request.getParameter("nombre"));
  12.             /*Duración*/ musica.setDuracion(Integer.parseInt(request.getParameter("duracion")));
  13.             /*Id*/ // musica.setId(id);
  14.             if(operacion.equals("GUARDAR")){
  15.                 music.guardarMusica(musica);
  16.             }
  17.             if(operacion.equals("MODIFICAR")){
  18.                 request.setAttribute("musica", music.getMusica(id));
  19.             }
  20.             if(operacion.equals("ELIMINAR") && id!=null){
  21.                 musica.setId(id);
  22.                 music.eliminarMusica(musica);
  23.             }
  24.            
  25.         }catch(Exception e){
  26.             System.out.println("Ubicacion "+e.getStackTrace());
  27.         }
  28.         doGet(request,response);               
  29.     }

Codigo para guardar datos

Código java:
Ver original
  1. public void guardarMusica(Musica musica) {
  2.         Connection conn;
  3.         try{
  4.             conn = getData().getConnection();
  5.             PreparedStatement ps;
  6.             if (musica.getId()!=null){
  7.                 ps = conn.prepareStatement(SQL.UPDATE_MUSICA);
  8.                 ps.setString(1, musica.getNombre());
  9.                 ps.setString(2, musica.getArtista());
  10.                 ps.setString(3, musica.getAlbum());
  11.                 ps.setString(4, musica.getGenero());
  12.                 ps.setInt(5, musica.getDuracion());
  13.                 ps.setInt(6, musica.getAnio());
  14.                 ps.setInt(7, musica.getId());
  15.                 ps.executeUpdate();
  16.             }else{
  17.                 ps = conn.prepareStatement(SQL.INSERT_MUSICA);
  18.                 ps.setString(1, musica.getNombre());
  19.                 ps.setString(2, musica.getArtista());
  20.                 ps.setString(3, musica.getAlbum());
  21.                 ps.setString(4, musica.getGenero());
  22.                 ps.setInt(5, musica.getDuracion());
  23.                 ps.setInt(6, musica.getAnio());
  24.                 ps.executeUpdate();
  25.                 rs.close();
  26.                 ps.close();
  27.             }
  28.             ps.close();
  29.             conn.close();
  30.         }catch(SQLException e){
  31.             System.out.println(e.getMessage());
  32.         }
  33.  
  34.     }

Sentencia SQL

Código:
static final String INSERT_MUSICA = "INSERT INTO MUSICA (NOMBRE, ARTISTA, ALBUM, GENERO, DURACION, ANIO) VALUES (?,?,?,?,?,?)";
	static final String UPDATE_MUSICA = "UPDATE MUSICA SET NOMBRE=?, ARTISTA=?, ALBUM=?, GENERO=?, DURACION=?, ANIO=? WHERE ID=?";
Edito: No me guarda la informacion en la Base de datos.

Última edición por PanchoJ; 29/01/2010 a las 18:50

Etiquetas: informacion, mysql
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 17:08.