Recent Posts

Saturday, 8 June 2019

Differences between Struts, JSF and Spring


Differences between Struts, JSF and Spring
1. Struts and JSF are web frameworks, which we will provide very good environment to prepare and execute web applications only.
     Spring Framework is an application Framework, it will provide very good environment to prepare and execute all the types of applications like standalone applications, web applications, distributed applications.

2. Struts and JSF are designed on the basis of only MVC design pattern.
     In Spring, only WEB Module is designed on the basis of MVC, Spring is using no of other design patterns like IOC [Dependency Injection], Locater design patterns, Creational Design Patterns, Decorator Design pattern.

3. Struts is controller layered framework, it has very good focus on controller layer in MVC.
     JSF is view layered Framework, it has very good focus on View layer in MVC. Spring Framework has provided very good support for all Controller Layer, Model Layer and View Layer.

4. In Enterprise Application Development, Struts and JSF are used to prepare mainly Presentation layer.
     In Enterprise Application Development, Spring Framework will cover all the layers like Presentation Layer, Business Layer, Persistence Layer.

5. Struts and JSF are provide support for the basic services like I18N, Validations, Exception Handling etc. but, Struts and JSF are not providing support for the middleware services like JAAS, JNDI, JTA, Java Mail, JMS etc.
     Spring Framework is providing very good support for all basic services like I18N, Validations, Exception Handling ... and the Middleware services like JAAS, JNDI, JTA, Java Mail, JMS, JCA etc.

6. Struts and JSF are not modularized Frameworks, to prepare any application in Struts and JSF we have to load all the jar files irrespective of their utilization.
     Spring framework is modularized framework, to prepare applications in spring framework we will load only the module respective jar files, not required to load other modules respective jar files unnecessarily.

7. Struts and JSF are more API dependent; they are not having POJO/POJI kind of implementations.
     Spring is less API dependent, it has POJO/POJI kind of implementations.

8. Due to the above reasons, debugging and testing are difficult in Struts and JSF.
     Testing and Debugging are very simple in Spring framework.

9. Struts and JSF are heavy weight Frameworks.
     Spring is light weight Framework.

10. Struts and JSF are not providing any predefined support to integrate the other applications like JDBC, EJBS, Hibernate, JPA, RMI etc.
     Spring has provided very good predefined support to integrate the other applications like JDBC, EJBS, Hibernate, JPA, RMI etc.

11. Struts and JSF are allowing the basic view related technologies like Html, JSP etc. to prepare view part.
     Spring Framework is allowing the most advanced view related tech like Velocity, Free marker etc. along with basic view related tech in order to prepare view part.

12. Struts and JSF are not having Aspect Oriented Programming to prepare applications.
     Spring has provided very good Aspect Oriented Programming to prepare Applications.

Next Tutorial : What is Spring Framework

Previous Tutorial : Introduction to Spring 

 

No comments:

Post a Comment