Some of the differences are as follows:
-Struts 2 has intelligent default configurations
-Struts 2 has
JAVA POJO approach unlike struts1.2
-Struts 2 has no separate action form class
-Struts 2 uses both xml configuration and annotations for mapping
-Struts 2 has interceptors which leads to reduced coupling
-Struts 2 execute method returns a
String. In Struts 1 execute method returns ActionForward object.