当前位置: 首页 > news >正文

asp个人网站模板什么网站做任务能挣

asp个人网站模板,什么网站做任务能挣,为什么做网站要有自己的服务器,成全视频在线看什么是序列化和反序列化 序列化:是将对象转换为可传输或存储的过程, 反序列化:通常是将字节流或是其他数据格式或源数据转为对象的过程。 序列化的作用 对象的持久化:将对象的状态保存到磁盘或数据库中,以便在程序…
什么是序列化和反序列化

序列化:是将对象转换为可传输或存储的过程,

反序列化:通常是将字节流或是其他数据格式或源数据转为对象的过程。

序列化的作用
  1. 对象的持久化:将对象的状态保存到磁盘或数据库中,以便在程序重新启动时恢复对象。
  2. 对象的传输:通过网络或其他通信方式将对象发送到远程系统,实现分布式系统的通信。
  3. 对象的缓存:将对象序列化后存储在缓存中,可以提高读取和响应速度。

总结来说序列化后可以传输,持久化保存到文件或系统缓存中进行交互。

java序列化转成字节流的好处

跨平台兼容以及方便传输和持久化存储: 字节流是一种通用的数据表示方式,可以在不同平台客户端,服务器之间传输或磁盘上或在数据库中存储

占用空间小和隐私安全: 字节流更紧凑,并且不直接暴露对象的内部结构和属性,占用更少的存储空间。

总结将对象序列化为字节流跨平台兼容以及方便传输,紧凑占用空间小和隐私更安全。

java中序列化的实现
类实现 Serializable 接口,

Serializable 接口没有任何方法,只是一个标记接口是一个约定和规范,是为了表明一个类可以被序列化会把对象转换为字节流,具体序列化过程就是通过流将对象写入流 在读出来

import java.io.Serializable;public class MyClass implements Serializable {// 类的成员变量和方法
}
类实现 Externalizable 接口

需要实现 writeExternal 和 readExternal 方法,以提供更高度的自定义序列化和反序列化过程

import java.io.Externalizable;
import java.io.ObjectInput;
import java.io.ObjectOutput;public class MyExternalizableClass implements Externalizable {@Overridepublic void writeExternal(ObjectOutput out) {// 自定义序列化逻辑}@Overridepublic void readExternal(ObjectInput in) {// 自定义反序列化逻辑}
}
将对象转为JSON格式或是解析JSON数据转为对象
// 通过jdk的ObjectMapper将对象转为json
AllPerson person = new AllPerson();
ObjectMapper objectMapper = new ObjectMapper();
String jsonString = objectMapper.writeValueAsString(person);// 还可以通过alibaba的fastjson或是hutoll的json工具
关于序列化注意的问题
定义serialVersionUID有什么用

serialVersionUID是一个用于版本控制的静态变量,用于确保在对象序列化和反序列化过程中,类的版本一致性

transient修饰成员变量不被序列化

如果在一个序列化的类中一些成员变量不需要或不能被序列化可以使用关键字transient修饰

NotSerializableException

如果一个类没有实现Serializable接口 但是在用流将类序列化时就会报错

关于JSON序列化的理解

将对象解析成JSon格式就是序列化的过程,将JSON数据解析为对象就是反序列化的过程,因为JSON也是一种通用的跨平台的格式

演示了如何将一个实现了 Serializable 接口的对象序列化成字节流,并在反序列化时还原对象
import java.io.*;public class SerializationExample {public static void main(String[] args) {// 创建一个实现了 Serializable 接口的对象MyClass myObject = new MyClass("Hello, Serialization!");// 将对象序列化为字节流try (FileOutputStream fileOut = new FileOutputStream("myobject.ser");ObjectOutputStream out = new ObjectOutputStream(fileOut)) {out.writeObject(myObject);} catch (IOException e) {e.printStackTrace();}// 从字节流中反序列化对象try (FileInputStream fileIn = new FileInputStream("myobject.ser");ObjectInputStream in = new ObjectInputStream(fileIn)) {MyClass restoredObject = (MyClass) in.readObject();System.out.println(restoredObject.getMessage()); // 输出: Hello, Serialization!} catch (IOException | ClassNotFoundException e) {e.printStackTrace();}}
}class MyClass implements Serializable {private String message;public MyClass(String message) {this.message = message;}public String getMessage() {return message;}
}

http://www.15wanjia.com/news/170358.html

相关文章:

  • 珠宝设计制作培训台州seo排名公司
  • 网站制作公司哪家价钱合理304hk 爱站网
  • 淄博网站制作定制品牌网站开发猪八戒
  • 上饶建站公司南京网站建设公司 w
  • 直播做ppt的网站有哪些wordpress 控制文章数量
  • 网站风格的设计城乡建设官方网站
  • 关于公司建设网站的意义网站文字大小
  • 怎么看网站到期时间沛县建设局网站
  • 徐州模板建站系统如何用虚拟主机建设网站
  • wordpress做过的大型网站吗免费行情网站排名
  • 南宁北京网站建设百度收录快的网站
  • 西安医疗网站建设wordpress的aware主题
  • 大悟网站开发宽带维修
  • 电子商务网站建设需求分析福田欧曼
  • 做再生料的网站高中生自己做 网站
  • wordpress 搜索过滤聊城seo
  • 网站博客程序早8晚5双休的工作
  • s上海网站建设姜堰区住房和城乡建设局网站
  • 谁做广东11彩票网站太原代理记账公司
  • 做微信头图的网站北京系统开发网站建设
  • 建设银行网站用户名怎么查有哪些做室内设计好用的网站
  • 故事网站模版12306网站开发人员
  • 烟台网络推广引流WordPress全面优化
  • 介绍商务网站开发流程智能建站系统cms
  • 简述对网站进行评析的几个方面.中铁建设中南公司官方网站
  • 中国设计网站排名图书馆网站建设教程
  • 响应式网站对seo做平台网站怎么做
  • 杭州网络科技网站建设深圳大型互联网公司有哪些
  • 数据线 东莞网站建设给装修公司做推广的网站
  • 做国外网站有哪些区块链技术开发