IO流

简介: Java I/O 流主要分为字节流(InputStream/OutputStream)、字符流(Reader/Writer)、转换流(InputStreamReader/OutputStreamWriter)、缓冲流(如BufferedInputStream等)和对象流(ObjectInputStream/ObjectOutputStream),用于高效处理数据的读写与转换。

分类

  • 字节流,读写时以字节为单位,抽象父类是 InputStream 和 OutputStream
  • 字符流,读写时以字符为单位,抽象父类是 Reader 和 Writer
  • 转换流,用来把字节流转换为字符流,相关类:InputStreamReader 和 OutputStreamWriter
  • 缓冲流,增加缓冲来提高读写效率,相关类:
  • BufferedInputStream
  • BufferedOutputStream
  • BufferedReader
  • BufferedWriter
  • 对象流,配合序列化技术将 java 对象转换成字节流或逆操作,相关类:ObjectInputStream,ObjectOutputStream
相关文章
|
1天前
|
XML Java 数据库连接
MyBatis映射关系
本文介绍MyBatis中四种映射关系:一对一(resultMap处理字段与属性映射)、一对多(使用`<collection>`标签关联集合)、多对一(通过`<association>`建立关联)及多对多(借助中间类实现双向集合映射),适用于复杂对象关系的数据持久化处理。
|
1天前
|
存储 SQL 关系型数据库
什么是回表查询 ?
MySQL中InnoDB引擎的聚簇索引将数据与索引存储在一起,每表仅一个;二级索引则分离存储,叶子节点保存主键值。回表查询需先查二级索引再查聚簇索引,性能较低。优化方式包括:使用主键查询、创建联合索引实现覆盖索引、利用MySQL 5.6+的索引下推功能,减少回表次数,提升查询效率。(238字)
|
2天前
|
存储 NoSQL 定位技术
MongoDB的特点
MongoDB具备高性能、高可用、高扩展特性,支持丰富查询语言。其嵌入式数据模型减少I/O,多存储引擎适应多样场景,副本集保障数据冗余与自动故障转移,分片实现水平扩展,满足海量数据存储与高效访问需求。
|
1天前
|
数据库
什么是事务以及事务的四大特性?
事务是数据库操作的基本单位,具备ACID四大特性:原子性确保操作不可分割、全成功或全失败;一致性保证数据在事务前后保持正确状态;隔离性使事务独立运行,避免并发干扰;持久性指事务提交后更改永久生效。这些特性共同维护数据的完整性与可靠性。(238字)
|
1天前
|
存储 关系型数据库 MySQL
MySQL数据库中的 char 与 varchar的区别是什么?
MySQL中char和varchar均用于存储字符串,但char为定长,固定空间,速度快但占空间;varchar为变长,按需存储,省空间但稍慢。设计表时应根据字段长度是否固定选择:如手机号用char(11),用户名等用varchar。
|
1天前
|
存储 安全
Session会话跟踪的原理?
Session是服务端会话跟踪技术,用户首次访问时服务器创建Session并生成唯一ID,通过Set-Cookie将JSESSIONID传给浏览器。后续请求浏览器自动携带该ID,服务器据此识别会话。此机制依赖Cookie传递Session ID,安全性高,但集群环境下存在Session共享问题。
|
2天前
|
JSON NoSQL 关系型数据库
MongoDB简介
MongoDB是一款开源、高性能、无模式的文档型数据库,采用类似JSON的BSON格式存储数据,结构灵活,支持复杂数据类型。它兼具NoSQL的扩展性与类关系型数据库的操作体验,适用于快速开发和高并发场景。
转发 与 重定向的区别?
在前后端分离架构中,转发与重定向已较少使用。转发是服务器内部将请求转交其他资源处理,仅一次请求,客户端无感;重定向则由服务器返回跳转指令,浏览器发起第二次请求,共两次请求。前者为服务端行为,后者属客户端跳转。
HTTP协议中常见的状态码 ?
HTTP状态码分为1xx、2xx、3xx、4xx、5xx五类。常见状态码包括:101(切换协议,如WebSocket)、200(请求成功)、302(重定向)、401(未认证)、404(资源未找到)、500(服务器内部错误),广泛应用于Web开发中。
|
1天前
|
安全
HTTP协议中请求方式GET 与 POST 什么区别 ?
简介:项目开发中常见GET与POST请求方式,主要区别在于参数传递位置、大小限制及安全性。GET用于获取数据,参数在URL中;POST用于提交数据,参数在请求体中,更安全。现代项目多采用RESTful风格,通过URL定位资源,不同请求方式(GET/POST/PUT/DELETE)对应不同操作,提升接口规范性与可读性。(238字)