day14 I/O流——序列化与反序列化 & 计算机网络五层架构 & TCP的建立连接与断开连接
day 14
序列化与反序列化
序列化
将对象转化成特定格式的字符串文件(字节文件)叫做序列化
1.一个类要想实现序列化,必须实现serializable接口
2.序列化用途
1)把对象的字节序列永久地保存到硬盘上,通常放在一个文件中;
2)在网络上传送对象的字节序列
3.序列化ID的作用:
序列化ID起着关键的作用,java序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的
反序列化时,JVM会把传来的字节流中的serialVersionUID与本地实体类中的serialVersionUID进行比较
如果相同认为一致,可以进行反序列化,否则就会报序列化版本不一致的异常
transient关键字
//transient透明的,序列化的时候不予考虑
transient int no = 1;
实现接口:java.io.Serializable
try{
User u = new User();
u.setName("zs");
u.setAge(11);
File file = new File("D://siTu/test/from");
OutputStream in = new FileOutputStream(file);
ObjectInputStream objin = new ObjectOutputStream(in);
objin.writeObject(u);
objin.close();
in.close();
}catch(){
}
反序列化
将特定字节文件转化为对象叫做反序列化
计算机网络
实现通信条件
1)IP协议
Internet Protocol,为计算机网络相互连接进行通信而设计的协议
2)IP地址
IP地址具有唯一性
范围0.0.0.0-255.255.255.255
本计算机IP地址:127.0.0.1或者0.0.0.0
3)端口号
包括物理端口和逻辑端口wan(广域网)lan(局域网)
物理端口:用于连接物理设备之间的接口(服务器在网络中的地址)
逻辑端口:逻辑上用于区分应用程序(服务)的端口(应用程序在服务器上的地址)
端口号只有整数:0-65535(2^16-1)
系统端口号:0-1023(2^10-1)
登记端口号:1024-49151 程序
客户端口号:49152-65535(子程序如qq插件)
http:80网络通信
ftp:21文件传输**
telnet:23
tomcat:8080java项目容器
Mysql:3306数据库
reids:6379非关系型数据库
nacos:8848注册中心
TCP/IP协议 传输控制协议 负责传输
五层计算机网络
应用层:软件所处层http协议/DNS/FTP/HTTPS
网络服务与最终用户的一个接口
传输层:tcp协议 UDP硬件
定义传输数据的协议端口号,以及流程控制和差错校验
网络层:ip协议
ICMP/IP(IPv4 IPv6)ARP PARP
数据链路层:物理端口
建立逻辑链接,进行硬件地址寻址,差错校验等功能
物理层:服务器
建立.维护.断开物理连接(由底层网络定义协议)
三次握手和四次挥手
TCP 建立连接 三次握手
TCP是面向连接的通信协议。通过三次握手建立连接
通过四次挥手断开连接
其他具体计算机网络相关见网盘内容
链接: https://pan.baidu.com/s/12DI9Oh4CwYhbWVDldUUjPw?pwd=1234 提取码: 1234 复制这段内容后打开百度网盘手机App,操作更方便哦
day14 I/O流——序列化与反序列化 & 计算机网络五层架构 & TCP的建立连接与断开连接的更多相关文章
- Properties-转换流-打印流-序列化和反序列化-Commons-IO工具类
一.Properties 类(java.util) 概述:Properties 是一个双列集合;Properties 属于map的特殊的孙子类;Properties 类没有泛型,propert ...
- 16 IO流(十三)——Object流 序列化与反序列化
Object流.序列化与反序列化 Object流是将 可序列化的对象 进行序列化与反序列化的流. 可序列化的对象:使用关键字Serializable修饰,表示这个对象可以进行序列化与反序列化. 序列化 ...
- 序列化和反序列化的几种方式(JavaScriptSerializer 、XmlSerializer、DataContractSerializer)(一)
JavaScriptSerializer 类 为启用 AJAX 的应用程序提供序列化和反序列化功能. 命名空间: System.Web.Script.Serialization 程序集: Sys ...
- 计算机网络知识之TCP/IP协议簇
OSI参考模型 OSI的来源 OSI(Open System Interconnect),即开放式系统互联. 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网 ...
- java 21 - 13 IO流之序列化和反序列化
序列化流:把对象按照流一样的方式存入文本文件或者在网络中传输.对象 -- 流数据(ObjectOutputStream) 构造方法:ObjectInputStream(InputStream in) ...
- .net学习之集合、foreach原理、Hashtable、Path类、File类、Directory类、文件流FileStream类、压缩流GZipStream、拷贝大文件、序列化和反序列化
1.集合(1)ArrayList内部存储数据的是一个object数组,创建这个类的对象的时候,这个对象里的数组的长度为0(2)调用Add方法加元素的时候,如果第一次增加元神,就会将数组的长度变为4往里 ...
- (21)IO流之对象的序列化和反序列化流ObjectOutputStream和ObjectInputStream
当创建对象时,程序运行时它就会存在,但是程序停止时,对象也就消失了.但是如果希望对象在程序不运行的情况下仍能存在并保存其信息,将会非常有用,对象将被重建并且拥有与程序上次运行时拥有的信息相同.可以使用 ...
- Java IO详解(六)------序列化与反序列化(对象流)
File 类的介绍:http://www.cnblogs.com/ysocean/p/6851878.html Java IO 流的分类介绍:http://www.cnblogs.com/ysocea ...
- 【Java IO流】对象的序列化和反序列化
对象的序列化和反序列化 1)对象序列化,就是将Object对象转换成byte序列,反之叫对象的反序列化. 2)序列化流(ObjectOutputStream),是字节的过滤流—— writeObjec ...
- Java基础IO流(四)序列化与反序列化
对象的序列化与反序列化: 对象的序列化,就是将Object转换成byte序列,反之叫对象的反序列化. 序列化流(ObjectOutInputStream),是过滤流 -------writeObjec ...
随机推荐
- 【Spring】Spring bean中id和name的差异
id和name都是spring 容器中中bean 的唯一标识符. id: 一个bean的唯一标识 , 命名格式必须符合XML ID属性的命名规范 name: 可以用特殊字符,并且一个bean可以用多个 ...
- 天翼云主机某一IP多次登录失败导致IP被锁无法登录,天翼云主机莫名其妙无法远程登陆
情况说明: 直接使用该IP通过ssh远程连接失败,但是先通过ssh远程连接其他主机上,然后在这个主机上再ssh刚才连接失败的主机,就能登陆上. 说明,root用户不是被锁了, 而是远程登陆IP被锁了 ...
- 基于CentOS 8服务器来搭建FastDFS高可用集群环境
服务器版本 我们在服务器的命令行输入如下命令来查看服务器的内核版本. [root@localhost lib]# cat /etc/redhat-release CentOS Linux releas ...
- vue中使用html video标签,写中间暂停图标
一篇汇总video事件的文章,方便查阅: https://blog.csdn.net/xuehu837769474/article/details/107532487 html部分 <div c ...
- 内网横向渗透 之 ATT&CK系列一 win7的yxcms
Yxcms渗透 前言 通过phpMyAdmin慢日志查询Getshell后,蚁剑连接,发现win7下面还有个cms靶场,于是就兴致勃勃的去打了一波. cms渗透 进入页面后,搜刮了页面所有可见信息,发 ...
- C语言在Linux下创建一个僵尸进程
第三章编程题3.12 1.僵尸进程是什么 每一个进程都有一个PCB(进程控制块),其中包含进程执行的状态等一系列信息. 当父进程fork()出一个子进程,子进程执行结束后操作系统会回收子进程使用的内存 ...
- C++面向对象编程之虚指针、虚表
1.当编译器看到一个函数调用,有2个考量:静态绑定or动态绑定 静态绑定是"call xxx",xxx 是表示地址,call 是汇编语言的一个动作,它一定会调用到某个地址: 当符合 ...
- MatrixOne从入门到实践08——SSB性能测试
MatrixOne从入门到实践--SSB性能测试 SSB 星型模式基准测试是 OLAP 数据库性能测试的常用场景,通过本篇教程,您可以了解到如何在 MatrixOne 中实现 SSB 测试. 测试环境 ...
- Java学习之路:Dos命令
2022-10-08 10:25:42 (一)打开CMD的方式 开始+系统+命令提示符 Win+R 输入cmd打开控制台 在任意的文件夹下面,按住Shift+鼠标右键,点击在此打开命令行窗口 资源 ...
- 我用canvas带你看一场流星雨
前言 最近总是梦见一些小时候的故事,印象最深刻的就是夏天坐在屋顶上,看着满天的繁星,一颗,两颗,三颗...不由自主地开始了数星星的过程.不经意间,一颗流星划过夜间,虽然只是转瞬即逝,但它似乎比夜空中的 ...