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

problema con libreria Gson y jquery

Estas en el tema de problema con libreria Gson y jquery en el foro de Java en Foros del Web. Buenos días a todos tengo un inconveniente al pasar unos datos en formato json para leerlo en otro archivo con jquery. Para ser mas exacto, ...
  #1 (permalink)  
Antiguo 26/09/2016, 10:47
 
Fecha de Ingreso: septiembre-2015
Mensajes: 58
Antigüedad: 8 años, 7 meses
Puntos: 2
problema con libreria Gson y jquery

Buenos días a todos

tengo un inconveniente al pasar unos datos en formato json para leerlo en otro archivo con jquery. Para ser mas exacto, mi arreglo en Json se crea bien, el código en java funciona, pero al leerlo hay inconveniente.
les muestro lo que tengo en java para convertir un resultado de una consulta en Json apoyado con la librería Gson.

Código Java:
Ver original
  1. Map<String, String> resultados = new LinkedHashMap<String, String>();
  2. consulta = con.consultar("SELECT item, nombre FROM public.menu WHERE item = "+item);
  3. consulta.next();
  4.  
  5. resultados.put("item", consulta.getString("item"));
  6. resultados.put("nombre", consulta.getString("nombre"));
  7.  
  8. Gson gson = new Gson();
  9. String json = gson.toJson(resultados);  
  10. out.println(json);

Al recogerlo en el código de jquery, si hago lo siguiente:

Código ASP:
Ver original
  1. $.ajax({
  2.         data: parametros,
  3.         url:  '../guardar_menus',
  4.         type: 'POST',
  5.         success: function(data){
  6.                console.log(data);
  7.                console.log(data.length)
  8.                for(var i = 0; i < data.length; i++){
  9.                       console.log(data[i].item);
  10.                }
  11.             }
  12.         })

data recupera el valor de mi arreglo en formato Json así:

Código Javascript:
Ver original
  1. {"item":"4","nombre":"CONTABILIDAD"}

pero al hacer el length me aparece un tamaño de 100 posiciones o más.. cuando solo debe pasar un arreglo con un tamaño de 1... no sé que pueda estar mal..

Podrían por favor ayudarme, ya no sé que más pueda ser, he probado varias formas de convertir el arreglo a Json desde Java, pero siempre pasa lo mismo.

gracias de ante mano a todos.
  #2 (permalink)  
Antiguo 30/09/2016, 05:14
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 2 meses
Puntos: 78
Respuesta: problema con libreria Gson y jquery

Hola jmg1189,
cuando haces un length te da 100 posiciones porque te está dando el tamaño de caracteres del String (JSON).

Para trabajar bien con él, una vez recoges el JSON deberías mapearlo en una lista de Objetos.... --> JSON.parse( json_string )
Entonces, cuando mires el tamaño te dará 1.

Para trabajar con JSON, yo te recomendaría Jackson.
Saludos

Última edición por ElAthlit; 30/09/2016 a las 05:20

Etiquetas: jquery, json
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 11:38.