Should I use Entity Beans for all database tables, even though they may have complicated relations and joins? Or should I just use them for frequently-used and simple tables such as account info?
An example of this is the ability to support dependant objects, which is coming in EJB 2.0, Inprise Application Server 4.1 supports this feature, where you can have non-EJB Java objects inside your Entity Beans, which map to different tables in the database. Giving you one entity bean covering multiple tables.
As a general note, I like to use Entity Beans which wrap a table and its dependants, so that other programmers do not have to remodel simple relationships such as Orders/OrderLines if there was an Entity Bean per table.