views:

381

answers:

7

I am not so much experienced on enterprise systems but i have some experience on Spring framework.I start to think open source framework such as Spring,Hibernate start to become defacto in enterprise development.Do you think it is necessary to learn Java EE 6 to become experienced on enterprise development cause i do not have so much experience on java EE?

A: 

It's always a good idea to know the alternatives, then you can make an informed decision about which technology is right for any given situation.

Antz
+7  A: 

Even if you use Spring in projects later on, it is always a good idea to know what "happens under the hood". Knowing the Java EE basics will make you a better user of frameworks like Spring, so I would say: yes learning the Java EE basics and concepts is a good idea and will help you with the frameworks that come after Spring too.

rsp
+4  A: 

It's a tough call. In an ideal world you learn both (and some WPF too!) and so future proof yourself. Getting really good, fluently applying (as opposed to just gaining awareness) at both Spring and JEE is a big ask, so pragmatically you need to specialise. I infer that you are somewhat indepedent, many folks are driven in one direction by the policy of their employer, but perhaps you are trying to position yourself as an independent consultant or contractor? So you're really trying to guess the direction of the market in the future - where to invest your learning.

Spring+Hibernate certainly had momentum, but EJB3+JPA has addressed much of the technical advantage that Spring+Hibernate had. What is less clear is whether the actual market acceptance is also swinging. I happen to be in the JEE camp and we're feeling good, but of course my market sample is somewhat self-selecting. My crystal ball is no better than yours. My guess is that for the moment at least Spring is a decent investment for your time, especially as you already have some skills.

I do endorse the other opinions that recommend getting an appreciation of both JEE and Spring to work on the conceptual underpinnings of the two approaches. I'm here addressing the question of where to spend effort if you only have time to get really deep in one technology.

djna
A: 

I have limited experience of EJB because every project that I hear of that DID use EJB got canned in favour of Spring. Does anyone still use EJB?

Fortyrunner
A: 

@Fortyrunner, EJB is still used a lot, but mainly in big corporations and for huge applications. Not all applications need EJB, often Spring or a combination of frameworks/libraries is more than acceptable.

anonymous
+3  A: 

Rod Johnson the creator of spring was involved in the specification of JEE 6. He blogged about how JEE 6 moves JEE in the right direction. With collaboration from springsource and Rod's involvement, I expect we'll see the technologies converging. Although the official JEE spec is bound to change at a slower pace than the springframework.

crowne
A: 

I don't see it as an either/or situation. I started with Spring and then moved onto the JEE elements, and added them as required. Spring just integrates so well with JEE that if you know spring then adding the JEE bits is simple.

Spring just brings so much more than the container. For example, out of container testing is made possible by spring, for that reason alone I cannot do without it. Yes, if you're forced into a paradigm by outside forces then it makes sense to focus on one context, but if you have a choice and can influence the direction, go with Spring.

Michael Wiles