Post on 22-Dec-2015
Session-01
Layers
Struts 2 Framework• The struts 2 framework is used to develop MVC-based web application.
• Struts 1.0 was released in June 2001.
• The current stable release of Struts is Struts 2.3.16.1 in March 2, 2014.
Struts 2 Struts 1
What is WebWork?• WebWork was a Java-based web application framework developed by OpenSymphony that
merged into the current Struts2 framework.
• It was designed to improve developer productivity and simplify code.
Struts 1 Flow
Struts 1 Architecture
Controller Components in Struts 1
Model 1 and Model 2 Architecture
Advantage of Model 1 Architecture1. Easy and Quick to develop web application
Disadvantage of Model 1 Architecture
• Navigation control is decentralized since every page contains the logic to determine the next
page. If JSP page name is changed that is referred by other pages, we need to change it in all
the pages that leads to the maintenance problem.
• Time consuming You need to spend more time to develop custom tags in JSP.
• So that we don't need to use scriptlet tag.
• Hard to extend It is better for small applications but not for large applications.
What is MVC ?
What is MVC ?
Continue…
• The Model is the part of the application that handles the logic for the application data.
Often model objects retrieve data (and store data) from a database.
• The View is the parts of the application that handles the display of the data.
Most often the views are created from the model data.
• The Controller is the part of the application that handles user interaction.
Typically controllers read data from a view, control user input, and send input data to the model.
Advantage of Model 2 Architecture
Disadvantage of Model 2 (MVC) Architecture
We need to write the controller code self. If we change the controller code, we need to
recompile the class and redeploy the application.
MVC 1 (Model-1)• MVC1 was a first generation approach that used JSP pages and the JavaBeans component
architecture to implement the MVC architecture for the Web.
Continue…
MVC 2(Model 2)
Difference between Struts 1 & Struts 2
Continue…
Continue…
Struts 2 Features• Struts 2 provides many features that were not in struts 1.
• The important features of struts 2 framework are as follows:
Struts 2 Features1) Configurable MVC components
• In struts 2 framework, we provide all the components (view components and action) information
in struts.xml file. If we need to change any information, we can simply change it in the xml file.
2) POJO based actions
• In struts 2, action class is POJO (Plain Old Java Object) i.e. a simple java class. Here, you are
not forced to implement any interface or inherit any class.
3) AJAX support
• Struts 2 provides support to Ajax technology. It is used to make asynchronous request i.e. it
doesn't block the user. It sends only required field data to the server side not all. So it makes
the performance fast.
4) Integration Support
• We can simply integrate the struts 2 application with hibernate, spring, tiles etc. frameworks.
Continue…5) Various Result Types
• We can use JSP, freemarker, velocity etc. technologies as the result in struts 2.
6) Various Tag support
• Struts 2 provides various types of tags such as UI tags, Data tags, control tags etc to ease the
development of struts 2 application.
7) Theme and Template support
• Struts 2 provides three types of theme support: xhtml, simple and css_xhtml. The xhtml is
default theme of struts 2. Themes and templates can be used for common look and feel.
Struts 2 Application Example
Struts 2 Application Example
Struts 2 Application Example
Struts 2 Application Example
Struts 2 Application Example
Struts 2 Application Example Using Neatbeans
Summary!!