Instructor: So let's look at the release timeline.
So here's the timeline for J2EE, or Java EE.
Started off in '99, moved all the way down
to our current state here of Java EE 7 in 2013,
Java EE 8 which is coming real soon, 2016/2017.
And then, basically around the 2001/2003 timeframe,
that's when everyone was just kind of fed
up with Enterprise JavaBeans
and just didn't want to do it anymore.
So that's when Spring 1.0 came out, around 2004
because prior to that, EJBs were just horrible
and no-one wanted to use it anymore.
So you came out with Spring,
Spring 1, Spring 2, Spring 3, and so on.
One thing that's interesting here is that the folks
at Sun Microsystems at the time before they were acquired
by Oracle, at the time they realized, "Whoa,
"What's this Spring thing and whoa, why is everyone
"moving towards it and why's everyone using it now?"
Mainly because of EJB.
Folks were tired of EJB.
So the folks at Sun actually went back and kind of,
re-engineered or re-wrote EJB to make it simpler
and make it easier to use.
So that came around the 2006/2009 timeframe.
So effectively, by the time you made it to Java EE 6,
they'd actually cleaned up the problems
that they had with EJB and actually made it a little
bit easier to use.
So effectively, the same thing as Spring.
It has the Inversion of Control,
it has Dependency Injection.
So current day here, Java EE 7,
you can really do everything that Spring can do,
with Java EE 7.
So you can do all the annotations,
no XML stuff, just like Spring and it's really easy
to do now.
The only problem though is that they were just a little bit
too late and unfortunately, EJB just kind of has a bad name
or a bad reputation and also, Spring has huge momentum,
huge market share.
So there's a lot of Apps that are already
out there written using Spring
and there's a lot more that are going to be created
using Spring.
So that's why Spring is very popular now
and kind of why it's still popular.
It's a lightweight framework, it's simple,
easy to use and a lot of developers like it.
And they basically ran away from the old days of EJB
and J2EE.
So that's kind of the big spiel.
But really now, if you put both technologies
side by side, you can do the same with either one.
But again, the whole reputation thing
and also, the momentum thing.
So as I mentioned, Spring is very popular,
it has a lot of market share,
it has a lot of projects written in it.
And Spring is still in demand.
It's the most sought after Java skillset by employers
and recruiters.
And, this is really funny, I actually have a friend
of mine, I used to work with him on a previous job,
he's actually in the process now of interviewing
for a new position and I spoke with him last week.
He sent me a message and he said,
"Hey."
and this is his actual text message,
"Man, everybody and their mama keeps asking
"me about Spring.
"You better get started on that Udemy course lol."
And again, this is some American slang here,
everybody and their mama meaning,
basically every recruiter he's talked to
and every employer he's interviewed with,
they are asking him a good deal about Spring.
So again, very good skillset for you to have
on your resume.
So you may have the question, what should you do?
Should you learn Spring?
Or should you learn Java EE?
And my answer's that you should learn both.
Right?
The reason is because now you'll be flexible
in the job market and if you go on a job interview,
or you join a new project team,
you'll be able to handle either one of them.
And a really cool thing about it is that a lot of the skills
are interchangeable, especially now since Spring and Java EE
are kind of in line, or in sync with their feature set.
So once you learn how to do MVC in one framework
then learning how to do MVC in another framework
is similar.
Implementing it is very similar between Java EE
and also with Spring.
So I'd say learn both of them and you'll learn Spring
in this class for sure,
I'll show you how to use Spring MVC,
and also I'll show you how to hook all this into a database
using Hibernate.
And then I have a lot of other courses
that cover some of the Java EE technologies
like JSP, Servelet and JSF, if you wanted
to go and check out some of my other courses
on learning those other Java EE technologies.
Anyway, I say learn them both,
you're a smart person, right.
And it's easy to pick up on them once you learn
one technology it's easy to jump into the next technology.
So anyways, I'd recommend picking
up both of those technologies.
So this kind of wraps up the video.
I wanted to give you some motivation on why Spring.
Give you a little bit of background on the history
of J2EE, and kind of where Spring came into play.
In the following videos I'll give you
a more formal discussion of Spring
as far as the various components of the framework
and then of course, we're going to start diving
in to writing code using Spring.
So we have a lot of good things coming up here,
I'll see you in the next video.