Im a student in the fifth semester. This semester we have to do a project for a software development company. (We choosed the project ourselfs) Our team consists of 5 persons; our task is to design and implement an application where employees can login and arrange their holiday for the whole year. The project director can accept or decline every single day of the requests.
The application should be realised as a web app using Hibernate and Spring. I am new to web app development, but im well familar with java apps. Currently im reading through Head Firsts Servlets & JSP and Design Patterns Excellent books!
At the moment my problem is the huge and opaque amount of frameworks to realize web apps. Is it recommendable to use JSF for the view tier? Or should we use the MVC implementation of spring? I read through several Hibernate tutorials in the last few days. Now i would like to get in the Spring FW. But its very powerful and im not sure what parts of spring i really NEED for our project and for the future. Im really intersted in web apps and plan to realize my own community page as soon as i get familar with the technologies.
Im not sure what i have to learn and what i could leave out. Can anybody help me with his experience or advise me what i should learn and give me some useful URLs? Im really motivated to realize good scalable web apps, and would really be thankful for every help.
P.S. Sorry for my english, im from germany and not really versed to write in english
Though i am not so much exp. guy in java development, but considering your query i am answering and my friends says that i make good piece of advices.
As you said you are confused with so may frameworks and other stuffs, what i would like to suggest you that being simple is the key. it's just a training project then you can use simple MVC also as i don't see any compexity in the project, but if you want to invest in your future plans then i would suggest you to go to Spring way. Use spring MVC as i personally find it good enough to build some web applications. It's very simple just got hold on configuratin XML and pojo's rest is all about ModelAndView . So if you want your future then use Spring or else go for Simple MVC don't put yourself to something else like struts or JSF as if they are good but you don't have time for that.
If you plan on using Spring with Hibernate, try looking at this tutorial. http://www-128.ibm.com/developerworks/web/library/wa-spring2/ Hibernate is extremely easy to use with Spring because the Spring developers have done a great job abstracting it well enough so that you do not need to go through ever little detail to get it working.
I would recommend using Spring's MVC with JSP until you are comfortable with the many facets of the MVC idea. Personally, I use Spring's MVC with Velocity because I like to template a lot of my stuff. It's possible to use Spring's AOP and inject the AOP objects into another MVC architecture such as Tapestry. Just get familiar with Spring's MVC approach first, then you can branch out to the more component based frameworks such as Wicket and Tapestry.
Welcome to JavaRanch! We don't have many rules here but we do have a naming policy which states among other things that users here must have a last name (not just an initial) as part of their user name. Please re-read the policy and edit your display name accordingly. If you have any questions about this policy you can let us know in the JavaRanch forum. In the meantime, we're glad to have you here and we look forward to your participation in our community.
Joined: Nov 09, 2000
Since you are using Spring anyway, I would generally recommend using Spring MVC as your web app framework unless you have requirements which might dictate another choice, which since this is a school project is unlikely.
That said, it is my opinion that folks should have a good grasp of HTTP, Servlets, and JSP prior to jumping into any of the web frameworks. I understand that's not always possible but it's still something to keep in mind. The various java web app frameworks are built on these three fundamentals so you will really be helping yourself out by acquiring a deep understanding of them. You said you're reading Head First Servlets and JSP and Head First Design Patterns which are two outstanding books so it sounds like you're already headed in the right direction.