No olvides que en las ciencias informáticas un problema casi siempre tiene varias resoluciones, así que nosotros enseñaremos lo más óptimo y eficiente.
Solución:
necesito esta lista de empleados en ajax
En primavera, cuando necesite serialización de objetos, deserialización y conversión de mensajes. en ese caso, debe anotar el método del controlador del controlador con @RequestBody
y @ResponseBody
.
Dónde:
- @ResponseBody : informará a Spring que intente convertir su valor de retorno y lo escribirá en la respuesta http automáticamente.
- @RequestBody : informará a Spring que intente convertir el contenido del cuerpo de la solicitud entrante en su objeto de parámetro sobre la marcha.
en su caso necesita el tipo JSON, debe agregar @ResponseBody
a la firma de su método o justo encima del método, y produce y consume, que son opcionales, como:
@RequestMapping(value="phcheck", method=RequestMethod.GET
produces="application/json")
public @ResponseBody List pay(@RequestParam("empid") int empid, String fdate, String tdate)
//get your employee list here
return empList;
y en el uso de llamadas AJAX:
contentType: 'application/json'
attribute dice el tipo de datos que estás enviando. ydataType: json
attribute le dice a jquery qué tipo de contenido de respuesta recibirá.
en tu caso contentType: 'application/json'
no es necesario, por defecto uno es decir 'application/x-www-form-urlencoded; charset=UTF-8'
es suficiente.
y puede recibir una lista de empleados en su éxito de AJAX, para iterarlo, haga lo siguiente:
success: function (data)
$.each(data, function(index, currEmp)
console.log(currEmp.name); //to print name of employee
);
,
Nota: El mapeador Jackson o cualquier otro mapeador debe estar disponible en buildpath para poder serializar y deserializar JSON.
Ver también:
- Nuevas características en spring mvc 3.1