@transient加在属性前的作用
2024-10-19 11:53:16
我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。
然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,打个比方,如果一个用户有一些敏感信息(如密码,银行卡号等),为了安全起见,不希望在网络操作(主要涉及到序列化操作,本地序列化缓存也适用)中被传输,这些信息对应的变量就可以加上transient关键字。换句话说,这个字段的生命周期仅存于调用者的内存中而不会写到磁盘里持久化。
总之,java 的transient关键字为我们提供了便利,你只需要实现Serilizable接口,将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会序列化到指定的目的地中。
最新文章
- Linux磁盘管理之磁盘结构、概念、原理01
- 如何使用SPY++查找
- 【CSS3】---background-origin background-clip background-size
- 【UVA1579】俄罗斯套娃 Matryoshka (动态规划)
- 接收Dialog的值
- VS 2017 Web项目需要安装Sql Server 2012 Express LocalDB问题
- Celery(三)实例Application
- Linux 内存文件系统
- $\mathcal{FFT}$·$\mathcal{Fast \ \ Fourier \ \ Transformation}$快速傅立叶变换
- 前端 --- 1 HTML
- django之ModelBase类及mezzanine的page link类
- document.write : 什么是在html输出中使用,什么是文档加载后使用?
- windows安装wget
- Android开发(七)——判断网络状态
- [.NET开发] C# 合并、拆分PDF文档
- CSS控制滚动条的样式
- 编写高质量代码:Web前端开发修炼之道(三)
- delphi7中 OnDrawColumnCell 事件怎么用
- GPU Instance
- 树莓派安装Raspbian系统以及相关配置(通过Windows)