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...
Gespeichert in:
Hauptverfasser: | , , |
---|---|
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&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 |