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這個關鍵字,它的意思是臨時的,即不會隨類一起序列化到本地,所以當還原後,這個關鍵字定義的變量也就不再存在。