PriDE Feature List


The following list of features for persistence frameworks is mostly adopted from Scott W. Ambler's white paper "The Design of a Robust Persistence Layer For Relational Databases" and should help to decide if PriDE matches the individual requirements in a software development project. Some common issues are not directly covered by PriDE but by a set of simple patterns.
 

Legend:
+++ Yes, very good, ++  Yes, + Yes, with limmitations, - No, with exceptions, -- No, --- No, very week
 
 
Feature Support 
in PriDE
JDO
(intelliBO)
Oracle
TopLink
JPA
Multiple types of persistence mechanisms
e.g. flat files, SQL databases, OODBs, ...
-- +
+
-
Encapsulation of persistence mechanisms
Except in special situations, programming is completely based on the framework.
+ ++ ++ ++
Multi-object actions
Queries, updates and deletions of multiple objects within a single operation
++ - + ++
Transactions ++ ++ ++ +++
Extensibility
Extensible for future requirements concerning persistence mechanisms, application architecture, ...
+ - -- +
Object IDs
Unique identification attributes of objects in the system
--
(see Patterns)
+ + ++
Cursor
Sequential processing of (large) result sets
+++ ++ + --
Proxies
Simplified representation of objects, limited to characteristics for human and programmatic identification
-
(see Patterns)
- + -
Records
Access to native database records in query results for direct forwarding to reporting tools
++ ++ + -
Multiple architectures
Support for different architecture and design principles
++
(see also Patterns)
+ - -
Multiple database versions and vendors
Mostly independent from vendors and database versions to allow rapid updates and database changes
+
(JDBC)
++
(JDBC)
++
(JDBC)
+++
Multiple connections
Access to multiple databases via multiple, concurrently available connections
++ + + ++
Native and non-native drivers
Support for multiple access strategies, including vendor-specific native drivers
-
(JDBC only)
--
(JDBC only)
--
(JDBC only)
--
SQL queries
Support for direct SQL queries for special cases
++ ++ ++ ++
Caching
Transparent temporary in-memory storage of data for load and store optimization.
--
(see Patterns)
++ ++ ++
Expression builder
Helper for programmatic object-oriented assembly of SQL expressions
+ ++ ++ +
Expression optimizer
Automatic analysis and optimization of expressions, assembled with the expression builder
-- + ++ +
Optimistic locking --
(see Patterns)
+ + ++
Joins +
(see Patterns)
++ ++ ++
Prepared Statements + ++ + ++
Stored Procedures ++ + + --
Design helper
Supporting utilities for the definition of mappings
+ ++ ++ -
Simple to use / quick to learn ++ + - +
Relationship support
Mapping of inter-object relationships, cascading delete, preservation of referential integrity
--
+
++
++


Home Introduction Javadoc