What is the difference between persistent and transient objects?
Object
An object is a real-world entity with certain attributes that makes up the object's structure. Also, an object encapsulates the data code into a single unit which in turn provides data abstraction by hiding the implementation details from the user. Any object has two properties i.e. state & behavior hence, it's similar to the program variable but the object has a complex structure. There are two types of objects:
- Transient object
- Persistent object
Transient object
- These objects exist during the execution but destroy once the program terminates.
- Transient Objects that have been just instantiated. Transient objects don't have representation and identifier values in the databases. The transient objects will be destroyed by the garbage collector if they don't have any use and reference in the database.
- In this state, the database has the saved objects
- Example- An entity from a repository comes under persistent objects
Persistent object
- These objects persist & store in the database even if the program terminates. Whenever any object is created DBMS assigns a unique identifier called object identity & it's abbreviated as OID.
- Persistent Objects have representation in databases and identifiers. These objects are saved in the databases. Persistent objects are synchronized with that of the database.
The persistence in Object Oriented Databases is handled by creating Persistent Objects and Transient Objects. As stated above the persistent objects have representations in the databases.
- The objects are not kept in the database in this state of Hibernation
- Until persisted, the creation of a new entity is called transients
Comments
Post a Comment