- Posted by: Alex Shaykevich
- Posted on: May 03 2005 22:26 EDT
I know this is probably a huge can of worms, but I'll risk opening it anyway. I've been away from the server side of things for a couple of years focusing on desktop apps and can't believe the number of things that have changed.
My last J2EE experience was with straight JSP, Servlets, and MySQL with no object-relational abstraction. I am amazed, impressed, and somewhat baffled by the variety of choices out there today. Now I need to do a small-medium sized J2EE project and I'm pondering my options. EJB is probably off the table.
So the question is this. If you had a chance to start from scratch, with no legacy to worry about, what do you think is the best combination of technologies to go with? Struts, JSF, Hibernate, Spring, JSP, ...?
I would also appreciate any recommendations on books/resources along with technology suggestions.
Thanks in advance.
You're right you'll get as many combinations as there are answers, but ignoring dogma for a moment.
1) Look at JSF for the UI / controller. The programming model will make a lot of sense if you've been doing client side Java
2) I think you are correct not to consider EJB as it stands in 2.1 - unless you want to look at the early implementations of EJB 3.0. The trend for O/R mapping, as exhibited for some time by frameworks like TopLink and Hibernate has been towards a POJO model. EJB 3.0 very much follows that route as well and it works well, certainly in the Oracle implementation which I've been using.