`

transient 理解

    博客分类:
  • Java
阅读更多
1、java的serialization提供了一个非常棒的存储对象状态的机制,说白了serialization就是把对象的状态存储到硬盘上去,等需要的时候就可以再把它读出来使用。但是在存储对象状态时,我们有时候会需要特定的对象数据在serialization时不进行存储。这时候 transient关键字就派上用场了。要关掉类的特定的数据域,可以使用transient关键字进行定义,这对于底层的java虚拟机来说,这个transient类型的变量不是一个类的永久性的状态。

2、比如说在一个实体Bean中,transient和 static字段是非持久性字段,不能保存在数据库中。 
  另外,如果你的对象需要序列化到数据库、JDNI或通过Object流传递给其他对象的话,对象中的非持久性字段应该加transient关键字。

3、你如果写了一个程序并需要序列化到本地或者数据库中(不只是你一个人需要用),并且因为测试的缘故,你认为加上了自己的一些信息,例如用户名,密码(例如数据库的身份),这样方便测试.但是,这些信息是肯定不应该被别人知道或者了解的,同时呢,又不想每次自己都去写都去改,这样,你可以用 transient定义这样的变量存储它们.

4、下面是java规范中对transient关键字的解释: 
      The transient marker is not fully specified by the Java Language Specification but is used in object serialization to mark member variables that should not be serialized.

5、java有个特点就是序列化,简单地来说就是可以将这个类存储在物理空间(当然还是以文件的形式存在),那么当你从本地还原这个文件时,你可以将它转换为它本身。这可以极大地方便网络上的一些操作,但同时,因为涉及到安全问题,所以并不希望把类里面所有的东西都能存储(因为那样,别人可以通过序列化知道类里面的内容),那么我们就可以用上transient这个关键字,它的意思是临时的,即不会随类一起序列化到本地,所以当还原后,这个关键字定义的变量也就不再存在。
分享到:
评论

相关推荐

    Java_transient关键字

    ### Java中的transient关键字详解 在Java编程语言中,`transient`关键字是一个非常重要的概念,主要用于对象序列...同时,理解`transient`与`volatile`之间的区别也是处理复杂Java应用中的多线程和序列化问题的关键。

    java关键字transient

    在Java编程语言中,`transient`是一个...正确理解和使用`transient`关键字对于编写可序列化的类和处理对象持久化非常重要。在实际开发中,要根据需求谨慎选择是否将变量声明为`transient`,以避免数据丢失或安全问题。

    Java关键字transient

    理解并正确使用`transient`可以确保数据的隐私、安全,并允许我们在序列化过程中对特定字段有更精细的控制。在实际编程中,尤其是在处理网络传输或持久化数据时,`transient`是一个不可或缺的工具。

    1-D——Transient_transient_一维传热学学习_

    在传热学领域,"1-D Transient"指的是在一维空间中的瞬态传热过程,这是一个重要的理论与实践相结合的课题。本资源包提供了一维非稳态传热分析的学习材料,包括一个实际的小案例和相关的MATLAB程序,旨在帮助学习者...

    EMTDC Transient Analysis for PSCAD Power System Simulation

    EMTDC,即电磁暂态计算装置(Electromagnetic Transient DC),它是一种强大的电磁暂态仿真引擎,自20世纪70年代中期以来一直在不断演进。 EMTDC的起源可以追溯到1969年赫尔曼·多姆尔(Hermann Dommel)博士的经典...

    Rocky DEM Workshop 15-Transient Structural Part B_Mechanical

    这不仅有助于理解Rocky和Transient Structural - Mechanical之间的交互,还能提升你在实际工程问题中的分析能力。 通过这个工作坊,你不仅会掌握一项新的模拟技巧,还将加深对Ansys Workbench平台整体工作流程的...

    Java transient关键字使用小记

    在Java编程语言中,`transient`关键字是一个非常重要的概念,它与对象的序列化过程紧密相关。序列化是将一个对象的状态转换为字节流,以便...理解并正确使用`transient`关键字对于编写高效、安全的Java程序至关重要。

    Transient-Analysis.rar_Powerworld_transient

    《发电机瞬态分析在PowerWorld中的应用》 电力系统稳定性是电力工程领域的重要研究内容,其中发电机瞬态...通过对"Transient Analysis"案例的学习和实践,我们可以深入理解发电机瞬态行为,提升电力系统分析的能力。

    rlc.zip_rlc transient_transient

    标题中的"rlc.zip_rlc transient_transient"暗示我们正在探讨RLC电路在瞬态状态下的行为,特别是针对2nd Order电路。描述进一步强调了我们要讨论的是直流(DC)电路中的瞬态响应,即电路在初始条件改变后,电压和电流...

    Java关键字Transient与串行化

    在Java编程语言中,`transient`...理解`transient`的工作原理及其在序列化过程中的作用,对于任何进行Java开发的程序员来说都是至关重要的技能。通过合理使用`transient`关键字,可以显著提高应用程序的安全性和效率。

    tss.zip_TRANSIENT STABILITY_stability_transient_zip

    《电力系统暂态稳定性分析与...总结来说,"tss.zip"包含的模型文件提供了研究电力系统暂态稳定性的工具,通过它,工程师和研究人员可以深入理解系统在大扰动后的动态行为,优化系统设计,确保电力系统的安全可靠运行。

    4 Evaluating Hydraulic Transient_pdf_

    总的来说,《水力瞬态建模与模拟:WANDA Transient软件在管道水流流动中的应用》这一资料深入探讨了如何利用专业软件进行水力瞬态分析,对于理解和优化水利设施的设计和运营具有极高的实践价值。通过学习和应用这些...

    transient_bY_indraneelsaki.zip_(DFIG)_EH6Y_dfig_rotor_transient

    通过Simulink模型,用户可以仿真不同工况下的系统响应,理解控制器如何影响发电机性能,以及在各种环境条件变化下转子的动态特性。这些模型对于研究和优化风力发电系统,尤其是DFIG控制策略的开发具有重要价值。

    深入理解Java虚拟机-Java内存区域透彻分析(序列化、反序列化概念及其使用场景+实现序列化的方式+transient关键字)

    深入理解Java虚拟机-Java内存区域透彻分析(序列化、反序列化概念及其使用场景+实现序列化的方式+transient关键字) Java序列化和反序列化是Java虚拟机中的一种重要机制,它们可以将Java对象转换为二进制数据,然后...

    TRANSIENT_STABILITY_STUDIES_study_transient_stability_

    《TRANSIENT STABILITY STUDIES》这本书或PDF文档很可能会详细探讨以上这些知识点,并提供实际案例和仿真结果,帮助读者深入理解和掌握瞬态稳定性分析的方法和技术。对于电力系统工程师、研究人员以及相关专业的学生...

    Discrete Oscillator Design Linear, Nonlinear, Transient, and Noise Domains

    《Discrete Oscillator Design Linear, Nonlinear, Transient, and Noise Domains》这本书详细介绍了振荡器设计的各个领域,包含线性技术、非线性技术、瞬态分析以及噪声领域,并提供了系统的设计方法和技术实现。...

    Java transient关键字原理解析

    那么在理解 transient 关键字之前,我们先了解下什么是序列化。 序列化是对象进行持久化处理,也就是说,将对象转化成一个字节流进行存储(比如存储为一个字节文件)或传输(通过网络传输字节)。同时,我们也可以...

    8_Field_Data_Coupling_Transient_transient_EDEM瞬态流场耦合_edem体积力_EDE

    这种耦合可以帮助我们理解和预测颗粒在不同环境下的行为,如颗粒在流体中的悬浮状态、沉积速度以及颗粒间的碰撞和能量传递。 "edem体积力"是指EDEM中用于定义颗粒受力的一种方法,通过编写特定的体积力函数,可以...

    foc.rar_foc_transient_vector control

    标题"Foc.rar_foc_transient_vector control"涉及到的是电机控制领域中的一个重要技术——磁场定向(Field Oriented Control,简称FOC)以及其在瞬态响应优化上的应用。这种控制策略是现代交流电机驱动系统中的一种...

Global site tag (gtag.js) - Google Analytics