Hola, he estado teniendo un problema; cuando agrego un nuevo producto aparecen todos los datos pero en la sección de descripción me vuele a mostrar el nombre del producto, he estado revisando por que sucede esto y al parecer todo esta bien. no encuentro el problema. Si alguien pudiera ayudarme se lo agradecería mucho
public List<Map<String, String>> listar() throws SQLException {
Connection con = new ConnectionFactory().recuperaConexion();
Statement statement = con.createStatement();
statement.execute("SELECT ID, NOMBRE, DESCRIPCION, CANTIDAD FROM PRODUCTO");
ResultSet resultset = statement.getResultSet();
List<Map<String, String>> resultado = new ArrayList<>();
while (resultset.next()) {
Map<String, String> fila = new HashMap<>();
fila.put("ID", String.valueOf(resultset.getInt("ID")));
fila.put("NOMBRE", resultset.getNString("NOMBRE"));
fila.put("DESCRIPCION", resultset.getNString("DESCRIPCION"));
fila.put("CANTIDAD", String.valueOf(resultset.getInt("CANTIDAD")));
resultado.add(fila);
}
con.close();
return resultado;
}
public void guardar(Map<String, String> producto) throws SQLException {
Connection con = new ConnectionFactory().recuperaConexion();
Statement statement = con.createStatement();
statement.execute("INSERT INTO PRODUCTO(NOMBRE, DESCRIPCION, CANTIDAD)"
+ "VALUES('"
+ producto.get("NOMBRE") + "' , '"
+ producto.get("DESCRIPCION") + "' , "
+ producto.get("CANTIDAD") + " ) " , Statement.RETURN_GENERATED_KEYS);
ResultSet resulSet = statement.getGeneratedKeys();
while (resulSet.next()) {
System.out.println(String.format(
"Fue incertado el producto de ID %d",
resulSet.getInt(1)));
}
}