Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Struts Agenda
 Software Crises
 What is Framework
 Model1,Model2
 What is Struts
 Why we need it
 Why is it called a...
Challenges Exist In Software
Development &
Software Crisis
* Time shown with out day light savings
 Projects must be deve...
What is Framework
 A software framework is a re-usable
design for a software system (or
subsystem).
 A framework is a pr...
Advantages of Framework
 Provide a procedure for the
development of Application.
 Saves developers Time.
 Provides same...
Model 1
 In the Model 1 the
JSP page is
responsible for
processing the
incoming request
and replying back to
the client.
Disadvantages of Model1
 It does not have
separate
controller
 This Architecture
usually leads to a
significant
amount o...
Model 2
 This Model2 approach
combines the use of
both servlets and JSP,
using JSP to generate
the presentation layer
and...
Model2 Advantages
 No processing/business logic within
the JSP page.
 Model 2 applications are easier to
maintain and ex...
Model 2 Components and
Responsibilities  Model
 The Model portion of an
MVC-based System
responsible for internal
state ...
What is Struts
 An open source web application
framework based on j2ee and java
which implements the MVC design
pattern i...
Why we use and what are the
advantages of Struts
 It is open source.
 Provides components for building
Web Applications ...
Struts Architecture
Struts Framework
Components
 Controller Components - Direct the
Action
 Model Components - Access
Data and
Systems
 Vie...
Struts Controller Components
Struts-config.xml
Actionservlet and
Requestprocessor
 Receive the
HttpServletRequest
 Automatically
populate a
JavaBean from the
request
p...
Actionservlet and
Requestprocessor
 ActionServlet dispatch request to Request
Processor(New from 1.1. previous this
behav...
What is An Action Class
 Extends
org.apache.struts.action.Actio
n
 Overrides the execute() method
 Acts as a bridge bet...
Struts-Config.xml
 The power and
flexibility of struts is
due to the extracting
of configuration
information from
across ...
The Model Components Model Components
 Java classes
 middle tier components
(EJB, Javabeans, …)
 database access
compo...
Action Form Extends the ActionForm class
 Create one for each input form in the application
 It is just like a java bea...
The View Components
Struts JSP Tag Libraries
 HTML
 Bean
 Logic
 Nested
 Tiles
 Template
Html Tag & Bean Tag Libraries
 Tags used to
create Struts
input forms
 Examples
(checkbox,image,
link, submit ,text,
tex...
Logic ,Tiles & Nested Tag
Libraries
 Managing
conditional
generation of
output text
 Looping over
object Collections
for...
Template Tag Library
 The "struts-template" tag library
contains tags that are useful in
creating dynamic JSP templates f...
Action Message & Action Error
 Used to signify general purpose
informational and error messages
 Rely on the resource bu...
Internationalization Support
 Much of the
framework
functionality
based on
java.util.Locale
 Struts Uses Java
Resource
B...
Other Features Suported by
Struts Framework
 Multi-Module Support
 Declarative Exception-Handling
 Dynamic Action Forms...
Struts Sequence Diagram
Struts Example 10.167.192.116l
ogin_app
 Webapps|
 |
sample(Application Name)
 |__ login.jsp

|__newLogin.Jsp

|__su...
Disadvantages
 Bigger Learning Curve
 Not Based on Domain Model
 Property Names
 Views are restricted.
Questions & Answers
Thank u
Struts Ppt 1
Nächste SlideShare
Wird geladen in …5
×
  • Als Erste(r) kommentieren

Struts Ppt 1

  1. 1. Struts Agenda  Software Crises  What is Framework  Model1,Model2  What is Struts  Why we need it  Why is it called as Struts  Advantages of Struts  Controller Elements & it’s Responsibilities  Model Elements & it’s Responsibilities  View Elements & it’s 
  2. 2. Challenges Exist In Software Development & Software Crisis * Time shown with out day light savings  Projects must be developed Quickly.  Projects must be in High-Quality.  Application Stability.  Better code Maintainability.  Lower Cost for Developing Application.
  3. 3. What is Framework  A software framework is a re-usable design for a software system (or subsystem).  A framework is a pre-built assembly of components and is designed to be extended.  It is also base for components.
  4. 4. Advantages of Framework  Provide a procedure for the development of Application.  Saves developers Time.  Provides same approach for all developers for developing code and Consistency in Software Design  Provide low-level services that developers can use to speedup development.  It also reduces software development and maintenance costs.
  5. 5. Model 1  In the Model 1 the JSP page is responsible for processing the incoming request and replying back to the client.
  6. 6. Disadvantages of Model1  It does not have separate controller  This Architecture usually leads to a significant amount of Java code embedded within the JSP page  Model 1 Developers Designers JSP  Developers and designers must work on the same files!
  7. 7. Model 2  This Model2 approach combines the use of both servlets and JSP, using JSP to generate the presentation layer and servlets to perform process-intensive tasks.  Model2 architecture introduces a Servlet between the browser and the JSP pages.
  8. 8. Model2 Advantages  No processing/business logic within the JSP page.  Model 2 applications are easier to maintain and extend, because views do not refer to each other directly.  The Model 2 controller servlet provides a single point of control for security and often encapsulates incoming data into a form usable by the back-end MVC model.  It also Provides unique responsibility to each component and each is
  9. 9. Model 2 Components and Responsibilities  Model  The Model portion of an MVC-based System responsible for internal state of the system, and actions that can be taken to change that state  Decide “How to do” Controller  -Decide “What to do”  -The Controller portion of the application is focused on receiving requests from the client ,deciding what business logic is to be performed ,and then delegating responsibility for producing the next phase of user interface to an appropriate View
  10. 10. What is Struts  An open source web application framework based on j2ee and java which implements the MVC design pattern is called Struts. Why is it called as Struts Strut synonym is Iron-rod.
  11. 11. Why we use and what are the advantages of Struts  It is open source.  Provides components for building Web Applications that speedup development and saves time for developers.  It makes complex applications into simple.  Built in Exception Handling  I18n support with resource bundles.  Built in validation framework.
  12. 12. Struts Architecture
  13. 13. Struts Framework Components  Controller Components - Direct the Action  Model Components - Access Data and Systems  View Components - What the users see
  14. 14. Struts Controller Components Struts-config.xml
  15. 15. Actionservlet and Requestprocessor  Receive the HttpServletRequest  Automatically populate a JavaBean from the request parameters.  Handle Locale Issues  Determine which  Extends javax.servlet.http.HttpSe rvlet  Receives all framework requests  Selects proper application module  Delegates request handling to the RequestProcessor instance  One ActionServlet
  16. 16. Actionservlet and Requestprocessor  ActionServlet dispatch request to Request Processor(New from 1.1. previous this behaviour was in Action servlet)  The work of Request Processor is:-  Finding ActionMapping.  Mapping Action to FormBean.  Creating FormBean Object.  Calling reset() method of FormBean  Calling Validator of FormBean  If no form(jsp/html) validation errors calls execute method in Action Class and finding response to request.
  17. 17. What is An Action Class  Extends org.apache.struts.action.Actio n  Overrides the execute() method  Acts as a bridge between user- invoked URI and a business method  Return information about which
  18. 18. Struts-Config.xml  The power and flexibility of struts is due to the extracting of configuration information from across frame work.  Configuration file contains action mappings (determines navigation)  Controller uses mappings to turn  Tags in this file are:-  Data Sources.  Form Beans.  Global Exceptions.  Global Forwards  Actions  Controller  Message resources  Plug-in Struts-Config.xml
  19. 19. The Model Components Model Components  Java classes  middle tier components (EJB, Javabeans, …)  database access components Used to represent the Internal state of the system  Actions that can change that state  Internal state of system represented by  JavaBeans
  20. 20. Action Form Extends the ActionForm class  Create one for each input form in the application  It is just like a java bean, Store data temporary, reset default values to views, validate input view.  Hold state and behavior for user input.  If defined in the ActionMapping configuration file, the Controller Servlet will perform the following:-  Check for instance of bean of appropriate class  If no bean exists, one is created automatically  For every request parameter whose name corresponds to the name of a property in the bean, the corresponding setter method will be called  The updated ActionForm bean will be passed to the Action Class execute() method when it is called, making these values immediately available. ActionForm Example
  21. 21. The View Components
  22. 22. Struts JSP Tag Libraries  HTML  Bean  Logic  Nested  Tiles  Template
  23. 23. Html Tag & Bean Tag Libraries  Tags used to create Struts input forms  Examples (checkbox,image, link, submit ,text, text area)  Tags used for accessing JavaBeans and their properties  Examples (Define,message, write)
  24. 24. Logic ,Tiles & Nested Tag Libraries  Managing conditional generation of output text  Looping over object Collections for repetitive generation of output text  Example (empty,lessThan, greaterThan)  Extended the base struts tags to allow them to relate to each other in nested nature  Tiles tags Each part ("Tile") of webpage can be reused as often as needed throughout your application. This reduces the amount of markup
  25. 25. Template Tag Library  The "struts-template" tag library contains tags that are useful in creating dynamic JSP templates for pages which share a common format. These templates are best used when it is likely that a layout shared by several pages in your application will change. The functionality provided by these tags is similar to what can be achieved using standard JSP include
  26. 26. Action Message & Action Error  Used to signify general purpose informational and error messages  Rely on the resource bundles  JSP Tags can access them  </html:errors>
  27. 27. Internationalization Support  Much of the framework functionality based on java.util.Locale  Struts Uses Java Resource Bundles.  Ex:-  Date ,Time and Currency
  28. 28. Other Features Suported by Struts Framework  Multi-Module Support  Declarative Exception-Handling  Dynamic Action Forms  Plugins  Tiles integrated With Core  Validator Integrated With Core
  29. 29. Struts Sequence Diagram
  30. 30. Struts Example 10.167.192.116l ogin_app  Webapps|  | sample(Application Name)  |__ login.jsp  |__newLogin.Jsp  |__success.jsp  |__WEB-INF  |__web.xml  |__Struts-config.xml  |__*.tldAll the struts tld files  |__lib  |__*.jarAll the jar files  | __classes  |__LoginAction,LoginForm,
  31. 31. Disadvantages  Bigger Learning Curve  Not Based on Domain Model  Property Names  Views are restricted.
  32. 32. Questions & Answers
  33. 33. Thank u

×