Difference b/w EJB2.1 and EJB3.0?

1.No need of Home Interface (EJBHome),but it is needed in EJB2.0

2.No more confusions to make an EJB remote or local,it's the client which would decide and cast to appropriate.

3.Just write SINGLE simple Java class and annotate it to be Stateless/Stateful/Entity/MessageDriven.Container

4.No Deployment Descriptors , MetaData Annotations are explored which is introduced in J2SE5.0

5.Forget all EJB life cycles.For example Entity bean life cycle in 3.0 is new,managed,detached,removed.

Ready to develop complex query,inner/outer join with EJB3.0.