ACM Home Page
Please provide us with feedback. Feedback
Self-configuring object-to-relational mapping queries
Full text PdfPdf (652 KB)
Source
ACM International Conference Proceeding Series; Vol. 347 archive
Proceedings of the 6th international symposium on Principles and practice of programming in Java table of contents
Modena, Italy
SESSION: Software engineering issues in Java program design table of contents
Pages 53-59  
Year of Publication: 2008
ISBN:978-1-60558-223-8
Authors
Pietu Pohjalainen  University of Helsinki
Juha Taina  University of Helsinki
Sponsor
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 20,   Downloads (12 Months): 120,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1411732.1411740
What is a DOI?

ABSTRACT

Object-to-relational maps are nowadays routinely utilized in providing a persistency mechanism for object-oriented programs. We present how an object-to-relational mapper, such as Hibernate, provides transparent persistency to object-oriented programs. We then show how the existing approaches of eager and lazy fetching of associations are problematic under the face of program evolution. As an improvement, we present self-configuring components, which reflectively configure the persistency layer usage sites, thus leading to improved maintainability of software.

A self-configuring component analyses the actual persistency layer usage pattern. Based on this information, the actual queries are configured. A general algorithm for retrieving the actual usage pattern is given. As an implementation mechanism, we discuss different approaches for the self-configuring components. Practical choices for implementation can vary between analysis of abstract syntax trees and Java byte-code analysis. Suitability of two byte-code analysis frameworks, namely BCEL and Soot are evaluated.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
L. DeMichiel and M. Keith, 2007. JSR 220: Enterprise JavaBeans#8482;3.0.
 
2
 
3
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J-M. Loingtier and J. Irwin, 1997. Aspect-Oriented Programming, Proceedings of the ECOOP 1997, LNCS vol. 1241, pp. 220--242.
4
 
5
P. von der Ahé, 2006. JSR 199: Java#8482; Compiler API.
 
6
F. Logozzo and M. Fähndrich, 2008. On the Relative Completeness of Bytecode Analysis versus Source Code Analysis. Proceedings of Compiler Construction, 17th International Conference CC08, LNCS vol. 4959, pp. 197--212.
 
7
M. Dahm, 2001. Byte Code Engineering with the BCEL API. Technical Report B-17-98, Freie Universität at Berlin, Institut für Informatik.
 
8
 
9
 
10
11
 
12
R. Vallée-Rai, L. Hendren, V. Sundaresan, P. Lam, E. Gagnon and P. Co, 1999. Soot - a Java Optimization Framework. Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research, pp. 125--135.
 
13
J. Lhoták and O. Lhoták, 2004. Visualizing Program Analysis with the Soot-Eclipse Plugin. Proceedings of eTX 2004, 2nd eclipse Technology Exchange, pp. 27--31.
 
14
J. Lhoták and O. Lhoták, L. Hendren, 2004. Integrating the Soot compiler infrastructure into an IDE. Proceedings of Compiler Construction, 13th International Conference CC04, LNCS vol. 2985, pp. 281--297.
 
15
A. Ibrahim and W. R. Cook, 2006. Automatic Prefetching by Traversal Profiling in Object Persistence Architectures. Proceedings of the European Conference on Object-Oriented Programming (ECOOP), pp. 50--73.
16

Collaborative Colleagues:
Pietu Pohjalainen: colleagues
Juha Taina: colleagues