Defining and Handling Transient Fields in PJama

The transient keyword of the Java™ programming language was originally introduced to prevent specific class fields from being stored by a persistence mechanism. In the context of orthogonal persistence, this is a particularly useful feature, since it allows the developer to easily deal with state th...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Printezis, Tony, Atkinson, Malcolm P., Jordan, Mick
Format: Buchkapitel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 151
container_issue
container_start_page 129
container_title
container_volume 1949
creator Printezis, Tony
Atkinson, Malcolm P.
Jordan, Mick
description The transient keyword of the Java™ programming language was originally introduced to prevent specific class fields from being stored by a persistence mechanism. In the context of orthogonal persistence, this is a particularly useful feature, since it allows the developer to easily deal with state that is external to the system. Such state is inherently transient and should not be stored, but instead re-created when necessary. Unfortunately, the Java Language Specification does not accurately define the semantics and correct usage of the transient keyword. This has left it open to misinterpretation by third parties and its current meaning is tied to the popular Java Object Serialisation mechanism. In this paper we explain why the currently widely-accepted use of the transient keyword is not appropriate in the context of orthogonal persistence, we present a more detailed definition for it, and we show how the handling of transient fields can be efficiently implemented in an orthogonally per- sistent system, while preserving the desired semantics.
doi_str_mv 10.1007/3-540-44543-9_9
format Book Chapter
fullrecord <record><control><sourceid>proquest_pasca</sourceid><recordid>TN_cdi_pascalfrancis_primary_784298</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>EBC3071843_14_141</sourcerecordid><originalsourceid>FETCH-LOGICAL-p1809-9dd4b034bf4dfba5c72bdf5fd7784405ead8df9fb6438b0af256a8667ff97f3d3</originalsourceid><addsrcrecordid>eNotUE1PwzAMDZ-ijJ25VuIclsRukxzRYAw0CQ7jHKVNMgpdV5px4N-TfViWLdvPT_Yj5Jaze86YnAAtkFHEAoFqo0_INaTGvtanJOMl5xQA9dlxwFFxfU4yBkxQLREuSaYLVQiBgFdkHOMXSwaiFKXOyOTRh6ZrulVuO5fPU2h3xXKwXWx8t81njW9dzJsuf3-1a3tDLoJtox8f84h8zJ6W0zldvD2_TB8WtOeKaaqdw4oBVgFdqGxRS1G5UAQnpUJkhbdOuaBDVSKoitkgitKqspQhaBnAwYjcHXh7G2vbhnRP3UTTD83aDn8msQitEooeUDENupUfTLXZfEfDmdmJZ8AkScxeLJPES3g4sg6bn18ft8bvFur06GDb-tP2Wz9EA0xylVY4JufwD5r5a8g</addsrcrecordid><sourcetype>Index Database</sourcetype><iscdi>true</iscdi><recordtype>book_chapter</recordtype><pqid>EBC3071843_14_141</pqid></control><display><type>book_chapter</type><title>Defining and Handling Transient Fields in PJama</title><source>Springer Books</source><creator>Printezis, Tony ; Atkinson, Malcolm P. ; Jordan, Mick</creator><contributor>Mendelzon, Alberto ; Connor, Richard ; Mendelzon, Alberto ; Connor, Richard</contributor><creatorcontrib>Printezis, Tony ; Atkinson, Malcolm P. ; Jordan, Mick ; Mendelzon, Alberto ; Connor, Richard ; Mendelzon, Alberto ; Connor, Richard</creatorcontrib><description>The transient keyword of the Java™ programming language was originally introduced to prevent specific class fields from being stored by a persistence mechanism. In the context of orthogonal persistence, this is a particularly useful feature, since it allows the developer to easily deal with state that is external to the system. Such state is inherently transient and should not be stored, but instead re-created when necessary. Unfortunately, the Java Language Specification does not accurately define the semantics and correct usage of the transient keyword. This has left it open to misinterpretation by third parties and its current meaning is tied to the popular Java Object Serialisation mechanism. In this paper we explain why the currently widely-accepted use of the transient keyword is not appropriate in the context of orthogonal persistence, we present a more detailed definition for it, and we show how the handling of transient fields can be efficiently implemented in an orthogonally per- sistent system, while preserving the desired semantics.</description><identifier>ISSN: 0302-9743</identifier><identifier>ISBN: 3540414819</identifier><identifier>ISBN: 9783540414810</identifier><identifier>EISSN: 1611-3349</identifier><identifier>EISBN: 3540445439</identifier><identifier>EISBN: 9783540445432</identifier><identifier>DOI: 10.1007/3-540-44543-9_9</identifier><identifier>OCLC: 958522434</identifier><identifier>LCCallNum: QA76.9.D3</identifier><language>eng</language><publisher>Germany: Springer Berlin / Heidelberg</publisher><subject>Applied sciences ; Computer science; control theory; systems ; Exact sciences and technology ; Information systems. Data bases ; Java Language ; Java Programming Language ; Memory organisation. Data processing ; Object Graph ; Software ; Standard Library ; Virtual Machine</subject><ispartof>Lecture notes in computer science, 2000, Vol.1949, p.129-151</ispartof><rights>Springer-Verlag Berlin Heidelberg 2000</rights><rights>2001 INIST-CNRS</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><relation>Lecture Notes in Computer Science</relation></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Uhttps://ebookcentral.proquest.com/covers/3071843-l.jpg</thumbnail><linktopdf>$$Uhttps://link.springer.com/content/pdf/10.1007/3-540-44543-9_9$$EPDF$$P50$$Gspringer$$H</linktopdf><linktohtml>$$Uhttps://link.springer.com/10.1007/3-540-44543-9_9$$EHTML$$P50$$Gspringer$$H</linktohtml><link.rule.ids>309,310,776,777,781,786,787,790,4036,4037,27906,38236,41423,42492</link.rule.ids><backlink>$$Uhttp://pascal-francis.inist.fr/vibad/index.php?action=getRecordDetail&amp;idt=784298$$DView record in Pascal Francis$$Hfree_for_read</backlink></links><search><contributor>Mendelzon, Alberto</contributor><contributor>Connor, Richard</contributor><contributor>Mendelzon, Alberto</contributor><contributor>Connor, Richard</contributor><creatorcontrib>Printezis, Tony</creatorcontrib><creatorcontrib>Atkinson, Malcolm P.</creatorcontrib><creatorcontrib>Jordan, Mick</creatorcontrib><title>Defining and Handling Transient Fields in PJama</title><title>Lecture notes in computer science</title><description>The transient keyword of the Java™ programming language was originally introduced to prevent specific class fields from being stored by a persistence mechanism. In the context of orthogonal persistence, this is a particularly useful feature, since it allows the developer to easily deal with state that is external to the system. Such state is inherently transient and should not be stored, but instead re-created when necessary. Unfortunately, the Java Language Specification does not accurately define the semantics and correct usage of the transient keyword. This has left it open to misinterpretation by third parties and its current meaning is tied to the popular Java Object Serialisation mechanism. In this paper we explain why the currently widely-accepted use of the transient keyword is not appropriate in the context of orthogonal persistence, we present a more detailed definition for it, and we show how the handling of transient fields can be efficiently implemented in an orthogonally per- sistent system, while preserving the desired semantics.</description><subject>Applied sciences</subject><subject>Computer science; control theory; systems</subject><subject>Exact sciences and technology</subject><subject>Information systems. Data bases</subject><subject>Java Language</subject><subject>Java Programming Language</subject><subject>Memory organisation. Data processing</subject><subject>Object Graph</subject><subject>Software</subject><subject>Standard Library</subject><subject>Virtual Machine</subject><issn>0302-9743</issn><issn>1611-3349</issn><isbn>3540414819</isbn><isbn>9783540414810</isbn><isbn>3540445439</isbn><isbn>9783540445432</isbn><fulltext>true</fulltext><rsrctype>book_chapter</rsrctype><creationdate>2000</creationdate><recordtype>book_chapter</recordtype><recordid>eNotUE1PwzAMDZ-ijJ25VuIclsRukxzRYAw0CQ7jHKVNMgpdV5px4N-TfViWLdvPT_Yj5Jaze86YnAAtkFHEAoFqo0_INaTGvtanJOMl5xQA9dlxwFFxfU4yBkxQLREuSaYLVQiBgFdkHOMXSwaiFKXOyOTRh6ZrulVuO5fPU2h3xXKwXWx8t81njW9dzJsuf3-1a3tDLoJtox8f84h8zJ6W0zldvD2_TB8WtOeKaaqdw4oBVgFdqGxRS1G5UAQnpUJkhbdOuaBDVSKoitkgitKqspQhaBnAwYjcHXh7G2vbhnRP3UTTD83aDn8msQitEooeUDENupUfTLXZfEfDmdmJZ8AkScxeLJPES3g4sg6bn18ft8bvFur06GDb-tP2Wz9EA0xylVY4JufwD5r5a8g</recordid><startdate>2000</startdate><enddate>2000</enddate><creator>Printezis, Tony</creator><creator>Atkinson, Malcolm P.</creator><creator>Jordan, Mick</creator><general>Springer Berlin / Heidelberg</general><general>Springer Berlin Heidelberg</general><general>Springer</general><scope>FFUUA</scope><scope>IQODW</scope></search><sort><creationdate>2000</creationdate><title>Defining and Handling Transient Fields in PJama</title><author>Printezis, Tony ; Atkinson, Malcolm P. ; Jordan, Mick</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-p1809-9dd4b034bf4dfba5c72bdf5fd7784405ead8df9fb6438b0af256a8667ff97f3d3</frbrgroupid><rsrctype>book_chapters</rsrctype><prefilter>book_chapters</prefilter><language>eng</language><creationdate>2000</creationdate><topic>Applied sciences</topic><topic>Computer science; control theory; systems</topic><topic>Exact sciences and technology</topic><topic>Information systems. Data bases</topic><topic>Java Language</topic><topic>Java Programming Language</topic><topic>Memory organisation. Data processing</topic><topic>Object Graph</topic><topic>Software</topic><topic>Standard Library</topic><topic>Virtual Machine</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Printezis, Tony</creatorcontrib><creatorcontrib>Atkinson, Malcolm P.</creatorcontrib><creatorcontrib>Jordan, Mick</creatorcontrib><collection>ProQuest Ebook Central - Book Chapters - Demo use only</collection><collection>Pascal-Francis</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Printezis, Tony</au><au>Atkinson, Malcolm P.</au><au>Jordan, Mick</au><au>Mendelzon, Alberto</au><au>Connor, Richard</au><au>Mendelzon, Alberto</au><au>Connor, Richard</au><format>book</format><genre>bookitem</genre><ristype>CHAP</ristype><atitle>Defining and Handling Transient Fields in PJama</atitle><btitle>Lecture notes in computer science</btitle><seriestitle>Lecture Notes in Computer Science</seriestitle><date>2000</date><risdate>2000</risdate><volume>1949</volume><spage>129</spage><epage>151</epage><pages>129-151</pages><issn>0302-9743</issn><eissn>1611-3349</eissn><isbn>3540414819</isbn><isbn>9783540414810</isbn><eisbn>3540445439</eisbn><eisbn>9783540445432</eisbn><abstract>The transient keyword of the Java™ programming language was originally introduced to prevent specific class fields from being stored by a persistence mechanism. In the context of orthogonal persistence, this is a particularly useful feature, since it allows the developer to easily deal with state that is external to the system. Such state is inherently transient and should not be stored, but instead re-created when necessary. Unfortunately, the Java Language Specification does not accurately define the semantics and correct usage of the transient keyword. This has left it open to misinterpretation by third parties and its current meaning is tied to the popular Java Object Serialisation mechanism. In this paper we explain why the currently widely-accepted use of the transient keyword is not appropriate in the context of orthogonal persistence, we present a more detailed definition for it, and we show how the handling of transient fields can be efficiently implemented in an orthogonally per- sistent system, while preserving the desired semantics.</abstract><cop>Germany</cop><pub>Springer Berlin / Heidelberg</pub><doi>10.1007/3-540-44543-9_9</doi><oclcid>958522434</oclcid><tpages>23</tpages></addata></record>
fulltext fulltext
identifier ISSN: 0302-9743
ispartof Lecture notes in computer science, 2000, Vol.1949, p.129-151
issn 0302-9743
1611-3349
language eng
recordid cdi_pascalfrancis_primary_784298
source Springer Books
subjects Applied sciences
Computer science
control theory
systems
Exact sciences and technology
Information systems. Data bases
Java Language
Java Programming Language
Memory organisation. Data processing
Object Graph
Software
Standard Library
Virtual Machine
title Defining and Handling Transient Fields in PJama
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-20T21%3A53%3A26IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_pasca&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=bookitem&rft.atitle=Defining%20and%20Handling%20Transient%20Fields%20in%20PJama&rft.btitle=Lecture%20notes%20in%20computer%20science&rft.au=Printezis,%20Tony&rft.date=2000&rft.volume=1949&rft.spage=129&rft.epage=151&rft.pages=129-151&rft.issn=0302-9743&rft.eissn=1611-3349&rft.isbn=3540414819&rft.isbn_list=9783540414810&rft_id=info:doi/10.1007/3-540-44543-9_9&rft_dat=%3Cproquest_pasca%3EEBC3071843_14_141%3C/proquest_pasca%3E%3Curl%3E%3C/url%3E&rft.eisbn=3540445439&rft.eisbn_list=9783540445432&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=EBC3071843_14_141&rft_id=info:pmid/&rfr_iscdi=true