【java – 将serialVersionUID添加到已在使用的可序列化类中】教程文章相关的互联网学习教程文章

序列化包含对象java的对象

我尝试序列化一个包含其他对象的对象,该对象本身是可序列化的. 有没有办法让它发挥作用?当我序列化第一个对象时,指向另一个对象的指针似乎丢失了.解决方法:以下是有关持久对象的两条规则: >规则#1:要持久化的对象必须实现Serializable接口或从其对象层次结构继承该实现>规则#2:要保留的对象必须标记所有不可序列化的字段 查看文章“Discover the secrets of the Java Serialization API”.它包含源代码和序列化过程的良好解释....

java – 序列化对象属性【代码】

当我在类中使用Serializable时,是否需要将Serializable添加到类中的所有对象? 例如,public class User implements Serializable{private List<Role> role; private Task task; }我是否还需要将Serializable添加到角色和任务中?public class Task implements Serializable{// ... }public class Role implements Serializable{// ... }解决方法:是的你是;如果您的类Task和Role不是Serializable,如果您尝试序列化User实例,则会得到...

java – Gson多态序列化【代码】

使用Gson 2.2.2我正在尝试序列化POJO(行为)的数组列表. 我有一个适配器几乎是我在网上看到的副本:public class BehaviorAdapter implements JsonSerializer<Behavior> {private static final String CLASSNAME = "CLASSNAME";private static final String INSTANCE = "INSTANCE";@Overridepublic JsonElement serialize(Behavior src, Type typeOfSrc,JsonSerializationContext context) {JsonObject retValue = new JsonObject()...

java – FlexJson – 无法序列化Double []数组【代码】

我有一个带有Double []变量的简单用户类,用于指定用户的位置.@Document public class User {private long id;private Double[] location; }这是我试过序列化我的User对象的代码new JSONSerializer().transform(new ArrayTransformer(), Double[].class).serialize(object));但是位置字段不会被序列化,但其他字段是序列化的.有人可以帮忙吗? 谢谢!解决方法:只是声明变量是不够的,因为它默认初始化为null. 使用setter方法设置值或使...

java – 在Drools 6.5.0和Drools 7.0.0中序列化后,Temporal运算符失败【代码】

我试图在drools中实现序列化.我的问题是drools融合运算符之后,之前,……都没有按预期序列化. 如果我不使用序列化和反序列化,我的规则正常工作. 我附上了一个复制品.谁能告诉我问题是什么.我希望规则只能开一次.它应该在03:06:00点火一次,但它会发射3次,一次发生在3:04:00,2次发射在3:06:00. 序列化的事件:package com.reproducer;import java.io.Serializable; import java.util.Date;import org.apache.commons.lang3.builder.To...

java – Jackson为Type X的所有字段添加自定义序列化程序【代码】

我有一个这样的课:public class Foo {private Integer id;private FooB fooA;private boolean isB;private boolean isC;private int age;private LocalDate date1;private LocalDate date2;private LocalDate date3;private LocalDate date4; }我希望本地序列化此类中的所有内容,但LocalDate字段除外.我有一个自定义序列化器,如下所示:public class LocalDateSerializer extends JsonSerializer<LocalDate> {@Overridepublic voi...

在Java中使用Externalizable接口进行反序列化[复制]【代码】

参见英文答案 > What is the difference between Serializable and Externalizable in Java? 11个我正在学习Serializable和Externalizable接口,我看到,当重构Externalizable对象时,首先使用public no-arg构造函数创建一个实例,然后调用readExternal方法.如果对象不支持Externalizable,则通过从ObjectInputStream中读取Serializable对象来恢复它们. 我不明白为什么我们使用ObjectInputStream进行...

java – CDI构造函数注入不适用于瞬态非可序列化依赖项【代码】

我很喜欢CDI的构造函数注入,但现在我找到了一个用例,其中构造函数注入显然不能按预期工作. 在我的例子中,我有两个类.类“BeanA”没有定义明确的范围,也没有实现Serializable.类“BeanB”使用@SessionScoped进行注释,并实现Serializable.public class BeanA{ }@SessionScoped public class BeanB implements Serializable{@Injectprivate BeanA beanA; }当我尝试将BeanA的实例注入到bean的BeanB中时,我从Weld获得了UnserializableDe...

如何在java中使用整数键反序列化Map【代码】

我一直在使用flexjson api来使用整数键序列化和反序列化地图.现在,反序列化映射键转换为字符串.是否有某些方法可以将键保留为整数. 这是一个示例代码块Map<Integer,Object> map = new HashMap<Integer, Object>(); map.put(1, "a"); map.put(2,"b"); flexjson.JSONSerializer serializer = new flexjson.JSONSerializer(); String serializedMapString = serializer.serialize(map);flexjson.JSONDeserializer<Map<Integer,Object>...

Java Jackson:反序列化复杂的多态对象模型:JsonMappingException:意外的令牌(START_OBJECT),期望VALUE_STRING【代码】

我有这种物体树 一个 B延伸A. C延伸B. D延伸B E延伸C. F扩展A并且对A有一个引用 A具有以下注释 @JsonTypeInfo(使用= JsonTypeInfo.Id.CLASS,包括= JsonTypeInfo.As.PROPERTY,属性= “@类”) 如果我尝试反序列化扩展A的JSON对象数组,则会引发以下错误org.codehaus.jackson.map.JsonMappingException: Unexpected token(START_OBJECT), expected VALUE_STRING: need JSON String that containstype id (for subtype of java.util.Col...

java – Jackson:覆盖原始类型反序列化?【代码】

我们需要从遗留服务器处理一些破坏的JSON,这些JSON在其输出中错误地将空值编码为文字“空”字符串. 我已经发现我可能想要覆盖https://github.com/FasterXML/jackson-core/blob/master/src/main/java/com/fasterxml/jackson/core/base/ParserMinimalBase.java#L368以“修复”这个,但这似乎在杰克逊内部如此深刻,我宁愿以不同的方式做到这一点.有替代方法,例如使用ObjectMapper为String.class添加自定义反序列化器还是丢失了?解决方...

java – kryo在apache spark中序列化类(任务对象)在反序列化时返回null【代码】

我正在使用java spark API编写一些测试应用程序.我正在使用一个不扩展可序列化接口的类.因此,为了使应用程序正常工作,我使用kryo序列化程序来序列化类.但是我在调??试时观察到的问题是,在反序列化期间,返回的类对象变为null,并反过来抛出空指针异常.这似乎是关闭问题,出现问题但不确定.因为我是这种序列化的新手,我不知道从哪里开始挖掘. 这是我正在测试的代码:package org.apache.spark.examples;import java.io.FileWriter; imp...

由于jackson,Java二进制序列化失败【代码】

我使用jackson 2将json转换为java对象.到现在为止还挺好.但我也使用hazelcast来分发集群中的对象.因此,所有bean都必须是java.io.Serializable.当我从json中读取Object时,如下所示:ObjectMapper mapper = new ObjectMapper(); mapper.addMixInAnnotations(AbstractBean.class, MongoIdMixIn.class);// this is to prevent from failing on missing type class property: @JsonProperty("@class") Object tgtObject = targetClass.n...

java – JSON序列化对象的格式为2006-10-04T19:49:49.无法对其进行反序列化【代码】

我正在使用struts2并序列化对象并将其传递给JSP.从jsp我再次将此对象传递给java并尝试使用以下代码反序列化它ObjectMapper objectMapper=new ObjectMapper(); receiptDocument = objectMapper.readValue(receiptDocumentStr,new TypeReference<ReceiptDocument>(){});被序列化的Object在Timestamp中有一个属性.因此,当序列化时,日期将转换为以下格式2006-10-04T19:49:49.但是当我尝试反序列化它时,它会给出异常org.codehaus.jack...

java – ObjectStream:有没有办法将序列化对象作为属性映射读取?【代码】

是否有任何标准方式或任何实用程序库来读取/导航序列化(通过ObjectOutputStream)对象的属性? 我试图解决的问题是升级使用ObjectOutputStream(旧版)序列化并存储在数据库中的数据.在我的例子中,一些内部字段被彻底改变并重命名.我无法使用ObjectInputStream读取对象,因为更改的字段的值将丢失(设置为null). 特别是将来可能需要再次升级它,所以如果我能用XML序列化替换以这种方式存储的旧数据会更好.但是,完成此任务的一般方法是迭代...

序列化 - 相关标签