Loading...
|
Please use this identifier to cite or link to this item:
https://nccur.lib.nccu.edu.tw/handle/140.119/36379
|
Title: | 以XML資料庫為儲存體的Java永續物件之研究 Persistent Java Data Objects on XML Databases |
Authors: | 侯語政 Hou, Yu-Cheng |
Contributors: | 陳正佳 Chen, Cheng-Chia 侯語政 Hou, Yu-Cheng |
Keywords: | XML資料庫 永續 Native XML Database Java Data Objects persistence JDO |
Date: | 2004 |
Issue Date: | 2009-09-18 18:26:27 (UTC+8) |
Abstract: | 物件永續化是應用系統設計時經常會面臨的需求,傳統做法是由開發人員自行設法將物件轉為資料庫可接受的格式,再存入後端資料庫。但這往往使得開發人員必須同時處理兩種資料模型,除了應用系統所用的物件模型之外,開發人員還要處理後端資料庫所用的資料模型,譬如表格等,以及兩種模型間的轉換。這不僅增加系統開發的複雜度,維護系統亦不容易。新的資料永續性技術Java資料物件(JDO)提供一個標準的框架,能夠幫助開發人員代為處理物件永續化的問題。因此開發人員能夠以單純的物件模型發展應用系統。另一方面,XML技術的興起帶動XML文件在資料交換與儲存方面的加速發展,其中專門儲存XML文件的資料庫也日益普遍。我們的研究是在瞭解如何使用XML資料庫為後端的資料儲存庫,而對Java物件進行物件永續化。 Object persistence often comes up at the development of the application systems. Traditionally, the developers should try to transfer the objects to forms that databases can accept, and then store them in databases. But this often makes developers deal with two kinds of data models at the same time: besides object model that the application usually uses, the developers should also deal with the data model used for the backend database, like the relation model, and the conversion between both models. This not only increases the complexity of the system, but also the difficulty to maintain the system. A new technology of object persistence is Java Data Objects (JDO), which offer a standard framework to help developers to deal with object persistence so that the developers can concern themselves with object model only. On the other hand, the rise of XML technologies makes it attractive in data exchange and storage. The use of XML databases as data repositories becomes more and more common. Our research in the thesis is to realize JDO by serializing Java objects as XML documents and use XML databases as persistent repositories to store the resulting documents. 第一章 緒 論 1
1.1 研究動機 1
1.2 研究目的 2
1.3 詞彙定義 4
1.4 論文架構 4
第二章 相關技術探討 5
2.1 資料儲存庫 5
2.1.1 關聯式資料庫 6
2.1.2 物件導向資料庫 9
2.1.3 原生XML資料庫 10
2.1.4 資料庫比較 11
2.2 資料永續性技術 12
2.2.1 序列化 13
2.2.2 Java資料庫連通性(JDBC) 13
2.2.3 Enterprise JavaBeans(EJB) 14
2.2.4 Java資料物件(JDO) 15
2.2.5 資料永續性技術比較 17
第三章 系統架構 19
3.1 JDO系統環境 19
3.1.1 JDO運作環境 19
3.1.2 增強模式(Enhancement) 20
3.1.3 JDO架構 24
3.2 JBoX架構 26
3.2.1 Metadata/Model Descriptor(MMD)組件 27
3.2.2 Query Language Transformer(QLT)組件 28
3.2.3 Namespace Transformer(NST)組件 28
3.2.4 Binding Object to XML(BOX)組件 30
3.2.5 Persistence Manager(PM)組件 30
3.2.6 State Manager(SM)組件 31
3.2.7 Store Manager(SRM)組件 31
3.2.8 Extent組件 31
3.2.9 Query組件 32
3.2.10 Transaction(TX)組件 32
3.2.11 XML Manager(XM)組件 32
第四章 系統實作 37
4.1 物件與XML文件映射 37
4.1.1 JBoX儲存格式–Extended XMI 37
4.1.2 映射方法 39
4.1.3 物件與XML文件之映射 44
4.2 查詢語言轉換 49
4.2.1 資料設定 50
4.2.2 候選類別轉換 51
4.2.3 邏輯判斷與數值計算表達式轉換 51
4.2.4 欄位轉換 53
4.2.5 方法轉換 54
4.2.6 參數與變數轉換 56
4.2.7 排序轉換 57
4.3 系統測試 57
第五章 結論與未來研究方向 61
5.1 結論 61
5.2 未來研究方向 62
參考文獻 63 |
Reference: | [1] Ambler, S. W. October 2003. Agile Database Techniques: Effective Strategies for the Agile Software Developer. Wiley. [2] Ambler, S. W. June 2005. The Design of a Robust Persistence Layer for Relational Databases. AmbySoft’s White Paper. http://www.ambysoft.com/essays/persistenceLayer.html. [3] Bertino, E. and Martino, L. April 1991. Object-Oriented Database Management Systems: Concepts and Issues. IEEE Transactions on Computers, 24(4):33-47. [4] Bourret, R. June 2005. XML Database Products. http://www.rpbourret.com/xml/XMLDatabaseProds.htm. [5] Champion, M. October 2001. Storing XML in Databases. http://www.bijonline.com/Article.asp?ArticleID=428&DepartmentId=6. [6] dbXML (Native XML Database). July 2005. http://www.dbxmlgroup.com. [7] EclipseJDO Plug-In. September 2004. http://www.eclipsejdo.org. [8] Elmasri, R. and Navathe, S. B. August 1999. Fundamentals of Database Systems, Third Edition. Addison-Wesley. [9] Ezzio, D. June 2003. Using and Understanding Java Data Objects. Apress. [10] Florescu, D. and Kossmann, D. August 1999. A Performance Evaluation of Alternative Mapping Schemes for Storing XML Data in a Relational Database. Technical Report No. 3680, INRIA. [11] Florescu, D. and Kossmann, D. September 1999. Storing and Querying XML Data using an RDBMS. Bulletin of the IEEE Computer Society Technical Committee on Data Engineering, 22(3):27-34. [12] Fussell, M. L. July 1997. Foundations of Object-Relational Mapping. http://www.chimu.com/publications/objectRelational/. [13] IBM DB2 XML Extender. July 2005. http://www-306.ibm.com/software/data/db2/extenders/index.html. [14] JDO Central. July 2005. http://www.jdocentral.com. [15] JDOMax. April 2004. http://www.jdomax.com. [16] Java Persistent Objects (JPOX). May 2005. http://www.jpox.org. [17] Jordan, D. March 2002. A Comparison Between Java Data Objects (JDO), Serialization and JDBC for Java Persistence. http://www.jdocentral.com/pdf/DavidJordan_JDOversion_12Mar02.pdf. [18] Jordan, D. and Russell, C. April 2003. Java Data Objects. O’Reilly. [19] Jordan, M. September 2004. Comparative Study of Persistence Mechanisms for the Java Platform. Publication of the Sun Microsystems Laboratories Technical Reports, TR-2004-136. [20] Keller, W. July 1997. Mapping Object to Tables – A Pattern Language. Proceeding of the Second European Conference on Pattern Language of Programming Conference. [21] Keller, W. September 2003. Persistence Options for Object-Oriented Programs. Proceeding of the Premier European Developer Conference on Java Technology and Object-Oriented Software Engineering. [22] Khan, L. and Rao, Y. November 2001. A Performance Evaluation of Storing XML Data in Relational Database Management Systems. Proceeding of the 3rd International workshop on Web Information and Data Management, 31-38. [23] Korthaus, A. and Merz, M. June 2003. A Critical Analysis of JDO in the Context of J2EE. Proceeding of the 2003 International Conference on Software Engineering Research and Practice, 1(6):34-42. [24] Manolescu, I., Florescu, D., and Kossmann, D. September 2001. Answering XML Queries over Heterogeneous Data Sources. Proceeding of the 27th International Conference on Very Large Databases. [25] Manolescu, I., Florescu, D., and Kossmann, D. January 2001. Pushing XML Queries inside Relational Databases. Technical Report No. 4112, INRIA. [26] Microsoft XML Developer Center. July 2005. http://msdn.microsoft.com/XML/. [27] Montag – Web Service System for XML Database Interaction. July 2005. http://montag.sourceforge.net. [28] ObjectDB Software. December 2004. ObjectDB for Java/JDO. http://www.objectdb.com. [29] ObjectWeb. May 2005. Speedo. http://speedo.objectweb.org. [30] Object Management Group. May 2003. XML Metadata Interchange (XMI) Version 2.0. http://www.omg.org/cgi-bin/doc?formal/2003-05-02. [31] Oracle XML Technology Center. July 2005. http://www.oracle.com/technology/tech/xml/index.html. [32] Raghavan, S. and Garcia-Molina, H. December 2001. Integrating Diverse Information Management Systems: A Brief Survey. Bulletin of the IEEE Computer Society Technical Committee on Data Engineering, 24(4):44-52. [33] Roos, R. M. August 2002. Java Data Objects. Addison-Wesley. [34] Shanmugasundaram, J., et al. September 2000. Efficiently Publishing Relational Data as XML Document. Proceeding of the 26th International Conference on Very Large Databases. [35] Shanmugasundaram, J., et al. September 1999. Relational Databases for Querying XML Documents: Limitations and Opportunities. Proceeding of the 25th International Conference on Very Large Databases. [36] Sleepycat Software. July 2005. Berkeley DB XML. http://www.sleepycat.com/products/xml.shtml. [37] SolarMetric. August 2002. SolarMetric Kodo JDO Developers Guide, 2.3.0. [38] Sun Microsystems. September 2003. JSR 12: Java Data Objects (JDO) Specification. http://jcp.org/jsr/detail/12.jsp. [39] Sun Microsystems. June 2005. The J2EE Tutorial. http://java.sun.com/j2ee/learning/tutorial/index.html. [40] Sun Microsystems. April 2005. The Java Tutorial. http://java.sun.com/j2se/learning/tutorial/index.html. [41] TriActive JDO (TJDO). April 2004. http://tjdo.sourceforge.net. [42] The Apache Software Foundation. May 2005. Apache JDO. http://wiki.apache.org/jdo/. [43] The Apache Software Foundation. June 2005. Apache Xindice. http://xml.apache.org/xindice/. [44] The Apache Software Foundation. April 2005. ObjectRelationalBridge (OJB). http://db.apache.org/ojb/. [45] The eXist XML Database. June 2005. http://exist-db.org. [46] Tyagi, S. et al. September 2003. Core Java Data Objects. Prentice Hall PTR. [47] Widom, J. September 1999. Data Management for XML: Research Directions. Bulletin of the IEEE Computer Society Technical Committee on Data Engineering, 22(3):44-52. [48] World Wide Web Consortium. February 2004. Extensible Markup Language (XML) 1.0 (Third Edition). http://www.w3.org/TR/2004/REC-xml-20040204/. [49] World Wide Web Consortium. November 1999. XML Path Language (XPath) Version 1.0. http://www.w3.org/TR/1999/REC-xpath-19991116. [50] World Wide Web Consortium. April 2005. XML Path Language (XPath) 2.0. http://www.w3.org/TR/2005/WD-xpath20-20050404/. [51] World Wide Web Consortium. October 2004. XML Schema Part 0: Primer Second Edition. http://www.w3.org/TR/2004/REC-xmlschema-0-20041028/. [52] World Wide Web Consortium. October 2004. XML Schema Part 1: Structures Second Edition. http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/. [53] World Wide Web Consortium. October 2004. XML Schema Part 2: Datatypes Second Edition. http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/. [54] World Wide Web Consortium. April 2005. XQuery 1.0: An XML Query Language. http://www.w3.org/TR/2005/WD-xquery-20050404/. [55] World Wide Web Consortium. April 2005. XQuery 1.0 and XPath 2.0 Data Model. http://www.w3.org/TR/2005/WD-xpath-datamodel-20050404/. [56] World Wide Web Consortium. April 2005. XQuery 1.0 and XPath 2.0 Functions and Operators. http://www.w3.org/TR/2005/WD-xpath-functions-20050404/. [57] XML:DB Initiative. May 2003. http://xmldb-org.sourceforge.net. [58] XORM – Extensible Object-Relational Mapping. May 2004. http://xorm.org. [59] Yoshikawa, M. and Amagasa, T. August 2001. XRel: A Path-Based Approach to Storage and Retrieval of XML Documents Using Relational Databases. ACM Transactions on Internet Technology, 1(1):110-141 |
Description: | 碩士 國立政治大學 資訊科學學系 90753014 93 |
Source URI: | http://thesis.lib.nccu.edu.tw/record/#G0090753014 |
Data Type: | thesis |
Appears in Collections: | [資訊科學系] 學位論文
|
Files in This Item:
File |
Size | Format | |
index.html | 0Kb | HTML2 | 217 | View/Open |
|
All items in 政大典藏 are protected by copyright, with all rights reserved.
|