Tengo este POJO que está siendo serialzied a JSON utilizando las nuevas Gson (). ToJson (entidad) ¿Debo implementar la interfaz Serializable en este POJO?
@Data
public class BankcodeJSONEntity {
@NotNull
@Size(min = 8, max = 8)
private String bankcode;
@NotNull
@Size(min = 11, max = 11)
private String bic;
@NotNull
private String ticket;
@Basic
@Temporal(TemporalType.DATE)
@NotNull
private Date date;
@NotNull
private String category;
@NotNull
private String name;
}
No, no es necesario. Gson uso reflexión con el fin de producir el JSON deseada. Usted debe implementa Serializable
cuando:
- guardar en el disco
- enviar a través de un conector como un Objeto
Por ejemplo, si usted tiene una aplicación Web desplegada en HA en dos o más nodos en el cluster (entonces intercambiar la sesión entre sí), y utiliza un ámbito de sesión para salvar la autenticación de usuarios, el grano que contiene esta información debe ser serializable.
Si decide utilizar Serializable
agregar una serialVersionUID
. Este es un largo utilizado por la JVM para identificar de manera única el objeto mismo.
Cuando no se sepcify, el compilador genera añadir un uno (que es, por tanto, depende del compilador) y esta identidad cambia cuando cambia de objeto, por ejemplo, la adición de un campo; Esto significa que después de un cambio mínimo, no debe deserializar objetos serializados antes del cambio.