mapeo con jackson
estoy mapeando mis clase java con jackson
pero tengo 2 problemas
1). cual seria la forma correcta de mapear java.sql.Timestamp
2). por lo general mis clases tienen tipo de datos compuesto
class persona{
private String nombre;
private String nui;
private Documento cedula;
}
como mapeo en jackson de json a java y viceversa clases compuestas
- hackchan's blog
- Inicie sesión o regístrese para enviar comentarios
Comentarios
1. No deberias de mapear
1. No deberias de mapear Timestamp ( de hecho no deberias tener datos de este tipo en tus objetos ) sino java.util.Date]
2. El mapeador Jackson trabaja de forma recursiva hace eso solo.
Timestamp
pero necesito traerme de la base de datos mi feche dd-MM-yyy hh:mm:ss y el date me la corta????
java.uti.Date no
java.util.Date no java.sql.Date
tengo una problema pero es que no puedo perder ni un segundo
en oracle al hacer TO_char(freg, 'dd-MM-yyyy hh:mm:ss') esto me da 20-03-2011 08:03:45
al traerme el dato de oracle y pasarlo como dices Date date = new Date(timeStamp.getTime());
me da 20-03-2011 08:01:45 si te das cuenta tengo dos minutos de diferencia
Je je, el que sea timestamp
Je je, el que sea timestamp vs time no tiene nada que ver. Tu conversion to_char te esta confundiendo, si imprimes el valor directamente
select freg from table where condicion
veras que siempre has tenido como minuto 01, lo que pasa es que estas mostrando el mes ( marzo - 03 ) en el minuto ^_^Para mostrar el minuto intenta con
MI
en vezRevisa esto.
http://www.techonthenet.com/oracle/functions/to_char.php
jejej
que vainas es que al dar formato en java si se maneja mm :) y no mi en oracle
el problema de la fecha resuleto
el problema de la fecha quedo resuelto ahora es no me mapea tipo datos compuestos
este es el error:
abstract types can only be instantiated with additional type information
este es el json:
{"detPremio":{"vpremio":"80000"},"bloqueadoPremio":"N","pagadoPremio":"S","retencion":"N","freg":"20-03-2011 08:01:45"}
dos clases detpremio y premio sera porque el json que me llegaa no viene el nombre de la clase premio???
y el error me hace referencia Idetpremio, recuerda que mis clases estas asi:
premioDTO(interface) --------> IpremioDTO(clase)
idetpremioDTO (interface) ----->detPremioDTO(clase)
si a mi json le quito lo detPremio me construye bien, pero apenas le añado lo detPremio me sale
abstract types can only be instantiated with additional type information
No parece que sea por los
No parece que sea por los datos (porque no viene el nombre de la clase) más bien parece que es precisamente por lo que dice el error: Abstract types can only be instantiated with addiotional type information.
Revisa la documentación de Jackson para saber a que se refiere con eso de "additional type information" Lo de "Abstract types" seguramente lo dice por lo de las interfases, haz una prueba con una clase concreta a ver si eso funciona ( una que no tenga/implemente interfaces)