The Apache DB ProjectObJectRelationalBridge

Jakarta OJB

ダウンロード

チュートリアル

ユーザ ドキュメント

システム ドキュメント

開発

日本語訳 (Translations)

オリジナル

Quick Start
  • The PersistenceBroker allows Java Programmers to store and retrieve Java Objects in/from JDBC-compliant RDBMS
  • Transparent persistence: Persistent classes don't have to inherit from a persistent base class or to implement an interface.
  • Persistence by reachability: All Objects associated to a persistent object by references are made persitent too.
  • Mapping support for 1:1, 1:n and m:n associations.
  • Automatic assignment of foreign key values.
  • The Object / Relational mapping is defined in an XML Repository. The mapping is completely dynamic and can be manipulated at runtime for maximum flexibility
  • Classes can be mapped to an arbitrary number of JDBC datasources.
  • The Broker uses an internal ObjectCache which
    • maintains object identity (multiple lookups on a given table with same primary key will return one and the same object !)
    • reduces read and write overhead against databases
    • prevents circular reads in object read phase
    • is fully garbage collectable through usage of soft references (if objects are referenced by the ObjectCache but not from any Client-Application they can be reclaimed by the garbage collector)
    • The CacheMechanism is pluggable and can be easily replaced with user-defined implementations. There are also some predefined implementations available.
    • Provides a cache synchronization mechanism to avoid data corruption when using multiple OJB servers.
  • Configurable Lazy Materialization through Proxy support in the PersistenceBroker. The user can implement specific Proxy classes or let OJB generate dynamic Proxies.
  • Support for Polymorphism and ODMG Extents. You can use Interface-types and abstract classes as attribute types in your persistent classes. Queries are also aware of extents: A query against a baseclass or interface will return matches from derived classes, even if they are mapped to different DB-tables
  • Support for Java Array- and Collection-attributes in persistent classes. The attribute-types can be Arrays, java.util.Collection or may be user defined collections that implement the interface ojb.broker.ManageableCollection.
  • Sequence-Managing. The SequenceManager is aware of extents and maintains uniqueness of ids accross any number of tables. Sequence Numbering can be declared in the mappping repository.
  • Reusing Prepared Statements, internal connection pooling.
  • Supports BMP Entity Beans (see demo code in package test.ojb.ejb). The caching technique improve the performance of EJB applications.
  • Integrates smoothly in controlled environments like EJB containers (wrt. SecurityManagers and JNDI based Datasources).
  • ODMG compliant API, a Tutorial, and TestCases are included (see package test.ojb.odmg)
    Important notes:
  • OQL is currently not fully implemented. (Aggregations and Method Invocations)
  • ODMG implicit locking is partly implemented but does currently not maintain transaction isolation properly. To achieve safe transaction isolation client application must use explicit lock acquisition.
  • Scalable client / server architecture that allows to build massively distributed systems.
  • Distributed Lockmanagement supporting four pessimistic Transaction Isolation Levels (uncommited or "dirty" reads, commited reads, repeatable reads, serializable transactions).
  • Optimistic locking support. Users may declare int or long fields as version attributes or java.sql.Timestamp fields as timestamp attributes.
  • Cache synchronisation for distributed caches.
  • Comes along with fully functional demo applications running against HSQLDB.
  • Quality assurance taken seriously: More than 120 JUnit-TestCases for regression tests. JUnit tests integrated into the build scripts.
  • Provides Log4J logging facilities.
  • 100 %: pure Java, Open Source, Apache License

Copyright © 1999-2007, Apache Software Foundation
Translated into Japanese by Tetsuya Kitahata, powered by Terra-International, Inc.
Original English Page would be found from HERE     --    ApacheNews    ASF プロジェクト一覧
Terra-International, Inc. -- テラ・インターナショナル
Special Thanks -- 【お問い合わせ/テキスト広告】