Ccna final exam - java, php, javascript, ios, cshap all in one. This is a collaboratively edited question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.
Thursday, April 19, 2012
Best java mvc framework implementation for web apps
What is the best MVC framework inmplementation in java? It has to be:
lightweight
KISS philosophy
be able to make changes to the views without compile
Stripes is a great framework that has all the requirements you listed. It is simple, easy to manage and configure, also easy to learn. And is really minimalistic, so I like it.
Stripes would be very well-suited to your requirements. I think you've essentially enumerated the key objectives of Stripes, so you'll really enjoy using it, in my opinion. Check out the Stripes book blog for links to the book, a quickstart Ant script that sets up a Stripes ready-to-run project for you, and some tips'n'tricks.
Definitely, the best one that i've used is VRaptor 3 url: http://vraptor.caelum.com.br/en
With it, you can define your controllers without extends or implements anything. For use a class as a controller, just put an annotation in your class.
This framework also don't need any xml ou properties to map action forwards, it is more refactoring friendly
I've begun to use Spring which is a great framework, but a lot of people rave about Groovy, especially since it appears to fulfill that minimalistic code requirement.
My vote would be for Induction. Induction implements dynamic class reloading, minimizing the need for container restarts. It supports multi-action controllers, encourages dependency injection into controller methods, provides concise model life-cycle management, and requires very little configuration. It makes easy work of model-to-model wiring by supporting dependency injection into model constructors (or factories).
For KISS, minimal amount of code and immediate update on code modification take a look at GRAILS (Groovy is the language that the MVC is programmed with) http://grails.org/
im forced to use Spring MVC over struts 2..to be honest its very good although its learning curve is not exponential but smooth..but when i tried struts 2 i found it really amazing but its main draw back was not enough resources or documentation..if you want a framework which is acceptable by market and appreciated alot then go with spring MVC..Its very elegant and sophisticated framework that will force you to sit on one knee for it.
Struts2, the know that HAR wrote in 09 not enough documentation, but today it has plenty, including several books and if you want to understand the foundational thought read a book on webwork. As far as a compilation of technology goes I recommend Struts2 as the MCV, Spring as the IoC container and Hibernate as the ORM. If you are doing any type of site that requires multilingual support and a great pattern of implementation AKA interceptors and chain or responsibility, model driven than this it he way to go. I have worked with Spring MVC, grails,and wicket, my money is on Struts2. As for ajax, I use JQuery and DWR, they are great tools with a good community.
If tool support is important I strongly recommend JavaServer Faces. It has good tool support in IntelliJ IDEA and Eclipse.
JSF 2 bakes in Facelets. The Facelets piece lets you easily write new components and views without restarting the server. JVM Hot Deploy is usually sufficient.
Don't underestimate the importance of tool support. It is very useful for less experienced developers.
I found Playframework is very easy to use:
ReplyDeleteIt's lightweight
It's minimalistic
You can change view or code and see
results in browser without
recompiling
Let me recommend Apache Wicket. It is very simple and suits modern Java coding styles very well (no XML configuration, Annotations, etc.).
ReplyDeleteFor bigger application Spring MVC is certainly great and may have a bigger community than Wicket.
See also http://stackoverflow.com/questions/116978/can-anyone-recommend-a-simple-java-web-app-framework
ReplyDeleteI vote for Spring MVC as well.
Stripes is a great framework that has all the requirements you listed. It is simple, easy to manage and configure, also easy to learn. And is really minimalistic, so I like it.
ReplyDeleteStripes would be very well-suited to your requirements. I think you've essentially enumerated the key objectives of Stripes, so you'll really enjoy using it, in my opinion. Check out the Stripes book blog for links to the book, a quickstart Ant script that sets up a Stripes ready-to-run project for you, and some tips'n'tricks.
ReplyDeleteDefinitely, the best one that i've used is VRaptor 3
ReplyDeleteurl: http://vraptor.caelum.com.br/en
With it, you can define your controllers without extends or implements anything.
For use a class as a controller, just put an annotation in your class.
This framework also don't need any xml ou properties to map action forwards, it is more refactoring friendly
Ajax support is very good as well
Hope that help you
I am a big fan of Spring MVC. Its pretty light weight and very customizable. You can both annotations and configurations.
ReplyDeleteAnd it also does not require alot of code to get up and running.
I've begun to use Spring which is a great framework, but a lot of people rave about Groovy, especially since it appears to fulfill that minimalistic code requirement.
ReplyDeleteI personally like Struts2. Just don't use the built in AJAX support.
ReplyDeleteMy vote would be for Induction. Induction implements dynamic class reloading, minimizing the need for container restarts. It supports multi-action controllers, encourages dependency injection into controller methods, provides concise model life-cycle management, and requires very little configuration. It makes easy work of model-to-model wiring by supporting dependency injection into model constructors (or factories).
ReplyDeleteFor KISS, minimal amount of code and immediate update on code modification take a look at GRAILS (Groovy is the language that the MVC is programmed with)
ReplyDeletehttp://grails.org/
im forced to use Spring MVC over struts 2..to be honest its very good although its learning curve is not exponential but smooth..but when i tried struts 2 i found it really amazing but its main draw back was not enough resources or documentation..if you want a framework which is acceptable by market and appreciated alot then go with spring MVC..Its very elegant and sophisticated framework that will force you to sit on one knee for it.
ReplyDeleteStruts2, the know that HAR wrote in 09 not enough documentation, but today it has plenty, including several books and if you want to understand the foundational thought read a book on webwork.
ReplyDeleteAs far as a compilation of technology goes I recommend Struts2 as the MCV, Spring as the IoC container and Hibernate as the ORM. If you are doing any type of site that requires multilingual support and a great pattern of implementation AKA interceptors and chain or responsibility, model driven than this it he way to go. I have worked with Spring MVC, grails,and wicket, my money is on Struts2. As for ajax, I use JQuery and DWR, they are great tools with a good community.
Sorry I noticed this question rather late. Anyway.
ReplyDeleteHybridJava is truly minimalistic Java web framework. It uses ZERO configuration regardless of the size of the application.
HybridJava is the ONLY truly MVC framework, where components are independent MVCs.
If tool support is important I strongly recommend JavaServer Faces. It has good tool support in IntelliJ IDEA and Eclipse.
ReplyDeleteJSF 2 bakes in Facelets. The Facelets piece lets you easily write new components and views without restarting the server. JVM Hot Deploy is usually sufficient.
Don't underestimate the importance of tool support. It is very useful for less experienced developers.