zoukankan      html  css  js  c++  java
  • @transient 注解 和 transient变量的作用

    @transient 和 transient是两码事

    1.@transient的作用

    @transient是hibernate和Morphia中的注解,hibernate都熟悉,Morphia是通过同提供一系列围绕mongo java驱动程序的注释和包装程序。

    hibernate: 实体类中使用了@Table注解后,想要添加表中不存在字段,就要使用@Transient这个注解了。

    morphia:想把某个属性排除映射到Mongo中,可以使用@transient注解想



    java中的transient是针对于对像序列化的,当一个对象实现了serilizable接口,这个对象就可以被序列化。对象的某些属性需要序列化,而有些属性不需要被序列化,例如,账号密码不想被序列化,这时候就可以在变量前面加上transient关键字。这个字段的周期仅存在于调用者内存中而不会被写到磁盘里持久化。

    总结:一旦被transient声明的变量, 将不是对象持久化的一部分,该变量内容在序列化后无法获得访问。

    transient只能修饰变量,不能修饰方法和类。注意,本地变量是不能被transient修饰的,如果变量是用户自定义的变量,则该类需要实现serializable接口。被transient的变量不能被序列化,一个静态变量不管是否被transient修饰,均不能被序列化。

    深入理解的话看这篇文字:https://www.cnblogs.com/lanxuezaipiao/p/3369962.html

  • 相关阅读:
    题解:2018级算法第五次上机 C5-图2
    题解:2018级算法第四次上机 C4-最小乘法
    题解:2018级算法第四次上机 C4-商人卖鱼
    题解:2018级算法第三次上机 C3-Zexal的浩瀚星辰
    C语言算法动态规划板子题汇总
    QT样式表
    3.PCB-禁止布线层
    2.PCB-板切割槽
    1.PCB-板形设置
    变压器
  • 原文地址:https://www.cnblogs.com/zhuyeshen/p/10985229.html
Copyright © 2011-2022 走看看