EJBs are handy to know if you want to build distributable applications. EJBs can be used as local or remote objects. If you haven't used or learnt Spring & Hibernate, I would learn that first before EJBs. Go to EJB3 directly. [ September 30, 2008: Message edited by: arulk pillai ]
EJB came in a variety of versions over the years (1.0, 1.1, 2.0, 2.1 and 3). Version 3 is quite different from 2.x. So you should make sure that you're not inadvertently learning an older version (or using a server that doesn't yet support EJB 3). If you're seeing talk of "annotations", then you know that EJB 3 is involved.