What is the difference between session and entity beans? When should I use one or the other?

Alex Chaffee

An entity bean represents persistent global data from the database; a session bean represents transient user-specific data that will die when the user disconnects (ends his session).

Generally, the session beans implement business methods (e.g. Bank.transferFunds) that call entity beans (e.g. Account.deposit, Account.withdraw).

Please see What is an entity bean? and What is a session bean? for more information.