java序列化与ObjectOutputStream和ObjectInputStream的实例详解

 更新时间:2017年09月22日 10:16:47   作者:莫欺少年穷Java  
这篇文章主要介绍了java序列化与ObjectOutputStream和ObjectInputStream的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下

java序列化与ObjectOutputStream和ObjectInputStream的实例详解

一个测试的实体类:

public class Param implements Serializable { 
 
  private static final long serialVersionUID = 5187074869820982336L; 
   
   
  private Integer param1; 
  private String param2; 
 
  public Integer getParam1() { 
    return param1; 
  } 
 
  public void setParam1(Integer param1) { 
    this.param1 = param1; 
  } 
 
  public String getParam2() { 
    return param2; 
  } 
 
  public void setParam2(String param2) { 
    this.param2 = param2; 
  } 
 
} 

 测试:

public class Main { 
 
  public static void main(String[] args) throws Exception { 
    SerializeParam(); 
     
    Param param = DeserializeParam(); 
    System.out.println(MessageFormat.format("param1={0},param2={1}", param.getParam1(), param.getParam2())); 
  } 
 
  /** 
   * 将实体类序列化到本地 
   * @throws FileNotFoundException 
   * @throws IOException 
   */ 
  private static void SerializeParam() throws FileNotFoundException, IOException { 
    Param param = new Param(); 
    param.setParam1(123); 
    param.setParam2("asdf"); 
     
    ObjectOutputStream oo = new ObjectOutputStream(new FileOutputStream( new File("E:/param.txt") )); 
    oo.writeObject(param); 
    System.out.println("Person对象序列化成功!"); 
    oo.close(); 
  } 
   
  /** 
   * 反序列化 
   * @return 
   * @throws Exception 
   * @throws IOException 
   */ 
  private static Param DeserializeParam() throws Exception, IOException { 
    ObjectInputStream ois = new ObjectInputStream(new FileInputStream( new File("E:/param.txt"))); 
    Param param = (Param) ois.readObject(); 
    System.out.println("Person对象反序列化成功!"); 
    ois.close(); 
    return param; 
  } 
 
} 

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望通过本文能帮助到大家,谢谢大家对本站的支持!

相关文章

  • JAVA学习之一步步搭建spring框架

    JAVA学习之一步步搭建spring框架

    这篇文章主要介绍了JAVA学习之一步步搭建spring框架,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • 邮件收发原理你了解吗? 邮件发送基本过程与概念详解(一)

    邮件收发原理你了解吗? 邮件发送基本过程与概念详解(一)

    你真的了解邮件收发原理吗?这篇文章主要为大家详细介绍了邮件发送基本过程与概念,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • 关于SpringBoot中的请求映射及使用

    关于SpringBoot中的请求映射及使用

    这篇文章主要介绍了关于SpringBoot中的请求映射及使用,Spring Boot 中的授权机制,包括基于角色的授权和基于资源的授权,同时,我们也将给出相应的代码示例,帮助读者更好地理解和应用这些授权机制,需要的朋友可以参考下
    2023-07-07
  • 常见JavaWeb安全问题和解决方案

    常见JavaWeb安全问题和解决方案

    这篇文章主要介绍了常见JavaWeb安全问题和解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • SpringBoot2.7 WebSecurityConfigurerAdapter类过期配置

    SpringBoot2.7 WebSecurityConfigurerAdapter类过期配置

    这篇文章主要为大家介绍了SpringBoot2.7中WebSecurityConfigurerAdapter类过期应该如何配置,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • 23种设计模式(2) java工厂模式

    23种设计模式(2) java工厂模式

    这篇文章主要为大家详细介绍了23种设计模式之java工厂模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • Java 后端开发中Tomcat服务器运行不了的五种解决方案

    Java 后端开发中Tomcat服务器运行不了的五种解决方案

    tomcat是在使用Java编程语言开发服务端技术使用最广泛的服务器之一,但经常在开发项目的时候会出现运行不了的情况,这里总结出几种能解决的办法
    2021-10-10
  • SpringBoot+Vue实现动态菜单的思路梳理

    SpringBoot+Vue实现动态菜单的思路梳理

    这篇文章主要为大家详细介绍了利用SpringBoot+Vue实现动态菜单的思路梳理,文中的示例代码讲解详细,感兴趣的小伙伴可以动手尝试一下
    2022-07-07
  • java.lang.Void类的解析与使用详解

    java.lang.Void类的解析与使用详解

    这篇文章主要介绍了java.lang.Void类的解析与使用详解,文中涉及到了java.lang.integer类的源码,分场景给大家介绍的非常详细,给大家补充介绍java.lang.Void 与 void的比较及使用,需要的朋友可以参考下
    2017-12-12
  • java中synchronized锁的升级过程

    java中synchronized锁的升级过程

    这篇文章主要介绍了java中synchronized锁的升级过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09

最新评论