The ability to create your own Java implementation classes is a powerful feature, but it can be made even more powerful by inserting an extra layer in the object hierarchy.
If you generate Java as described previously, every one of your Java classes is wired directly to one of Oracle's classes. This is not a good idea –– in case you decide that you want some new feature built into every entity implementation class, you would have to change each of the individual classes (
RentalImpl, and so on).
Fortunately, there is a better way: you can create your own framework extension classes. These are sets of classes that extend the Oracle-supplied classes and sit between your specific implementation class and the Oracle-supplied ...