Working with Hibernate on Oracle database sometimes the joins introduce a performance problem, due to the fact that Hibernate is not able to control the Oracle optimizer. Therefore the programmers are always requested to write their own data access layer with direct jdbc calls.
I know that the DBVA is using hibernate as the object persistence core. But this is a good idea? Can I upgrade the Hibernate library? And can I change to generate JDO etc?
Our persistence layer (orm.jar) is built on top of Hibernate. Our persistence layer adds some features for supporting advanced object to relational mapping. On the other hand, our code generation engine can generate Java classes and class to table mapping file based on the class diagram and entity relationship diagram. The code generated by our code generation engine is highly optimized to maximize the performance and minimize the overhead in talking with database. We also enable you to customize the persistence classes to better suit your programming needs. Here are some of the features highlights in related to generating persistence classes:
Generate Java class that conform to Factory design pattern
Generate all persistence related method as Static method
Generate Java class that conform to DAO design pattern
Generate POJO persistent API
Criteria class generation (Simplify the way to querying database with criteria)
Smart association handling (Updating either side of a bi-directional association will automatically trigger an update on the other side)
Customizable way of error handling
Generate Servlet filter for web application development
Advanced support for different sub-class strategy
Advanced persistent and model API for saving/loading and managing the model
This is a real torment to use your orm.jar. How can I persuade my customer to choose this? You don’t have any performance/memory testing report. Even now we don’t know what did you change in the hibernate library.