Tag: 序列化

是否可以使用单斜杠将字符串序列化为json?

我有下课 class MyClass{ String str = “D:\folder1\folder2\folder3\file.txt” …. } 我将MyClass的对象序列化为json。 在json中我看到我的str看起来像D:\\folder1\\folder2\\folder3\\file.txt 是否有可能要求GSON不添加双斜线?

任务不可序列化 – Spark Java

我在Spark中得到Task不可序列化的错误。 我已经搜索并尝试使用某些post中建议的静态函数,但它仍然会出现相同的错误。 代码如下: public class Rating implements Serializable { private SparkSession spark; private SparkConf sparkConf; private JavaSparkContext jsc; private static Function mapFunc; public Rating() { mapFunc = new Function() { public Rating call(String str) { return Rating.parseRating(str); } }; } public void runProcedure() { sparkConf = new SparkConf().setAppName(“Filter Example”).setMaster(“local”); jsc = new JavaSparkContext(sparkConf); SparkSession spark […]

为其他对象实现String.intern()的等效项

我正在尝试实现String.intern()的等价物,但对于其他objets。 我的目标如下:我有一个对象A,我将序列化然后反序列化。 如果在某处有另一个对A的引用,我希望反序列化的结果是相同的引用。 这是我期望的一个例子。 MyObject A = new MyObject(); A.data1 = 1; A.data2 = 2; byte[] serialized = serialize(A); A.data1 = 3; MyObject B = deserialize(serialized); // B!=A and B.data1=1, B.data2=2 MyObject C = B.intern(); // Here we should have C == A. Consequently C.data1=3 AND C.data2=2 这是我的实现atm。 ( MyObject类扩展了InternableObject ) public abstract class InternableObject […]

序列化FacesContext或如何在服务器重新启动后获取属性值

问题如下:我需要序列化用户会话,因此,在服务器重新启动后它仍然存在。 使用JavaEE和Tomcat 7可以很好地使用implements Serializable ,但问题是FacesContext 。 实际上,在重新启动服务器之后, FacesContext.getCurrentInstance()返回null ,因此我无法访问消息包(因此无法再找到我的message.properties )。 那么,重启Tomcat时如何保留FacesContext ?

如何序列化ArrayList 2x并且不要过度编写已经存在的ArrayList JAVA

我不得不为我的程序创建一个管理面板来序列化更多对象,它的作用是什么,它将对象(String,String)保存到arraylist中,并且arraylist通过序列化保存到文件中。 当试图将另一个对象添加到arraylist时,程序首先将文件内容反序列化为arraylist,因为如果不这样做,我将如何访问文件中已存在的对象。 但是在添加对象3时会发生类似这样的事情 (安慰) 索引0 [[Word:word1 – 提示:提示1],Word:word2 – 提示:hint2] 怎么解决这个? 我想我应该删除旧的arraylist每次创建一个新的对象,但我不知道该怎么做,有什么我可以做的编辑文件中的旧arraylist而不是删除它。 提前致谢 enter code here class Admin{ ArrayList al = new ArrayList(); public void ifwordsarepresent(){ try { FileInputStream fis = new FileInputStream(“D:/serial.txt”); ObjectInputStream ois = new ObjectInputStream(fis); if(fis.available()>0){ try { try { al.add((ArrayList) ois.readObject()); addingwords(); ois.close(); } catch public void addingwords(){ try { try […]

使用ObjectOutputStream写入文件而不覆盖旧数据

我需要在eclipse上的文件上编写字符串而不覆盖旧字符串。 该函数类似于:创建一个字符串,将其保存在文件中,创建另一个字符串,将其保存在文件中,这包含多个字符串。 字符串具有下一种格式: String one = name surname surname; value1 value2 value3; code 所以方法将是:创建字符串,将其保存在文件中。 创建另一个字符串,将其保存在文件上等。然后在文件上保存所需的字符串数量后,我需要读取列出控制台上所有字符串的文件。 但是现在,我只能在文件上保存一个字符串然后列出它。 如果我保存两个字符串,第二个会覆盖第一个字符串,无论如何,它不正确,因为当我想列出它们时返回null值。 这是在文件上写入字符串的方法: public void writeSelling(List wordList) throws IOException { fileOutPutStream = new FileOutputStream (file); write= new ObjectOutputStream (fileOutPutStream); for (String s : wordList){ write.writeObject(s); } write.close(); } 这就是我在主类上调用write方法的方法 : List objectlist= new ArrayList(); objectlist.add(product); //Product is the string I […]

Android到Google App Engine序列化exception

我在android代码中序列化对象图并将结果传递给GAE servlet。 在反序列化时,我有时会遇到以下exception: java.io.StreamCorruptedException:类型代码无效:71 我将问题追溯到其中一个领域。 如果我将其设置为null或标记为瞬态,则问题将消失。 但是,如果我只对这个字段进行序列化/反序列化 – 我也没有看到任何问题。 有任何想法吗?

在Java Enum中实例化

为了免费序列化的好处,在Enum中定义INSTANCE是一种很好的做法(Effective Java Edition 2,Item 3)。 如果有人能够解释它意味着什么,它会很棒。 在Java中使用Enum作为单例的最佳方法是什么? 林先生,提前谢谢

使用serialVersionUID的数组类?

我无法理解Java序列化文档中的这条评论: 数组类不能声明显式的serialVersionUID,因此它们始终具有默认的计算值,但是对于数组类,不需要匹配serialVersionUID值。 也许我无法理解这一点,但是,我还没想到为什么我需要这样做呢?

将Java Object存储为MySQL中的BLOB:奇怪的错误

有一点问题我希望有人可以开导我。 尝试序列化我自己创建的Java对象,该对象由其他Java对象组成(同样是我自己创建的)。 当jdbc尝试运行将Object存储为blob的PreparedStatement时,它运行正常,直到我收到此错误。 我运行MySQL作为数据库并检查我试图存储在blob字段中的所有对象都被定义为“implements Serializable”。 我试图在MySQL和MedBlob中尝试正常的BLOB数据类型。 我通过Xampp运行MySQL客户端版本:5.1.41。 代码如下: LinkedList tt = t; //Ignore these two variables String tName = “”; int modelCode = 0; for (int i = 0; i< tt.size();i++){ tName = t.get(i).getTableName(); modelCode = session.getCurrentModel(); try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(baos); oos.writeObject(t.get(i)); byte[] tableAsBytes = baos.toByteArray(); fyProject.connectionController […]