咨询与建议

看过本文的还看了

相关文献

该作者的其他文献

文献详情 >Genericity in Java: persistent... 收藏

Genericity in Java: persistent and database systems implications

在 Java 的 Genericity:坚持并且数据库系统含意

作     者:Alagic, Suad Royer, Mark 

作者机构:Univ So Maine Dept Comp Sci Portland ME 04103 USA 

出 版 物:《VLDB JOURNAL》 (国际大型数据库杂志)

年 卷 期:2008年第17卷第4期

页      面:847-878页

核心收录:

学科分类:08[工学] 0812[工学-计算机科学与技术(可授工学、理学学位)] 

主  题:Java object persistence type systems object-oriented databases transactions reflection virtual platforms 

摘      要:Lack of parametric polymorphism has been a major obstacle for making Java a viable database programming language. Regrettably, a recently accepted solution for genericity in Java 5.0 has far-reaching negative implications for persistent and database systems because of static and dynamic type violations. Severe implications occur in typical database transactions when processing a variety of database collections. Well-known approaches to persistence in Java, including Java s own persistence mechanism, do not perform correctly due to incorrect dynamic type information that gets promoted to persistence along with objects. Dynamic checking of types of objects fetched from the persistent store may now lead to unexpected type violations. Further problems occur in reflective transactions as Java Core Reflection now allows dynamic type violations without detecting them or throwing standard exceptions. All of this shows that extending Java with parametric polymorphism has not made Java a more viable database programming language. Both legacy systems, such as those based on the Java binding of the ODMG or JDO, and future Java-related persistent and database technologies will be affected. The source of these problems is in an implementation idiom called type erasure. This paper provides formal proofs of the above implications of type erasure along with specific samples of code in Java 5.0 illustrating these violations. The limitations of the virtual platform and extensions required for persistent systems to solve this problem are also elaborated.

读者评论 与其他读者分享你的观点

用户名:未登录
我的评分