SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
The Spring Framework
@maxgoff
BIG SMART DATA
The Spring Framework:
BIG SMART DATA
⁻ What is Spring
⁻ Modules
⁻ Spring MVC
What is Spring?
̵ Comprehensive Programming/Config model
̵ Modern Java-based (JVM) Enterprise
̵ Focus: Lightweight & “Plumbing”
̵ Flexible Dependency Injection
̵ Infrastructure (support) for declarative:
̵ transactions
̵ caching
̵ validation
̵ formatting
BIG SMART DATA
Spring Origin: Rod Johnson (Expert One-on-One J2EE Design and Development)
What is Spring?
̵ Powerful abstractions:
̵ JDBC, JPA, JTA, JMS
̵ Support for open source frameworks:
̵ Hibernate, Quartz
̵ Flexible Web Framework for RESTful MVC
̵ Rich testing facilities
BIG SMART DATA
⁻ Modular in design
⁻ Incremental adoption
⁻ Range of deployment
platforms, such as
Tomcat & WebSphere
⁻ Citizen of major clouds
such as Heroku, VMware,
& Amazon
What is Spring?
BIG SMART DATA
• Dependency Injection
• Aspect-oriented programming
• Data access framework
• Transaction management framework
• Remote access framework
• Convention-over-configuration
• Model-view-controller framework
BIG SMART DATA
Spring Modules
• Inversion of control container
• Uses Java Reflection
• Creates managed objects (“beans”)
• Dependency Lookup
• Dependency Injection Patterns:
• Constructors
• Properties
• Factories
BIG SMART DATA
Dependency Injection
Spring Modules
BIG SMART DATA
Dependency Injection
Spring Modules
The Spring
Container
Fully
configured
system
Configuration
Metadata
Your Business
Objects
(POJOs)
produces
• AOP:
• increases modularity
• allows for separation of cross-
cutting concerns
BIG SMART DATA
Aspect-oriented framework
Spring Modules
• Resource management
• Exception handling
• Transaction participation
• Resource unwrapping
• Abstraction
BIG SMART DATA
Data access framework
Spring Modules
• Spring brings transaction abstractions:
• global, local, nested
• Platform TransactionManager
• Transaction Template
• metadata or Java annotations
BIG SMART DATA
Transaction management framework
Spring Modules
• Abstraction for various RPC technologies
BIG SMART DATA
Remote access framework
Spring Modules
Convention-over-configuration
• Spring Roo
(http://www.springsource.org/spring-roo)
• Request-based framework
• Strategy interfaces
• GOAL: Simple and clear
BIG SMART DATA
MVC Framework
Spring Modules
• Front Controller: DispatcherServlet Class
BIG SMART DATA
MVC Framework
Spring Modules
• Clear separation of roles:
Each role (controller, validator, command
object, DispatcherServlet, etc) can be fulfilled
by a specialized object
• Configuration of both framework and
application classes as JavaBeans:
BIG SMART DATA
MVC Framework
Spring Modules
• Adaptability & flexibility:
Define any controller method signature you
need, possibly using one of the parameter
annotations
• Reusable business code:
Use existing business objects as command or
form objects instead of mirroring them to
extend a particular framework base class
BIG SMART DATA
MVC Framework
Spring Modules
• Customizable binding & validation
• Customizable handler mapping & view resolution
• Flexible model transfer:
Model transfer with a name/value Map supports
easy integration with any view technology
• Customizable locale and theme resolution
• Support for JSPs with/without Spring tag library
BIG SMART DATA
MVC Framework
Spring Modules
• Support for JSTL
• Support for Velocity without the need for
extra bridges
• Spring tag library for data binding & themes
• JSP form tag library
BIG SMART DATA
MVC Framework
Spring Modules
Spring Resources
Tutorials:
Developing a Spring Framework MVC application:
http://static.springsource.org/docs/Spring-MVC-step-by-step/
Introduction to Spring Web MVC:
https://netbeans.org/kb/docs/web/quickstart-webapps-spring.html
Resources:
The Spring Framework:
http://www.springsource.org/spring-framework
Modern Web:
http://www.springsource.org/features/modern-web
NetBeans IDE:
http://netbeans.org
BIG SMART DATA
http://about.me/maxgoff
http://linkedin.com/in/maxgoff
http://bigsmartdata.com
@maxgoff
BIG SMART DATA

Weitere ähnliche Inhalte

Was ist angesagt?

Managing ESB artifacts with the WSO2 Governance Registry
Managing ESB artifacts with the WSO2 Governance Registry Managing ESB artifacts with the WSO2 Governance Registry
Managing ESB artifacts with the WSO2 Governance Registry
WSO2
 
API and Big Data Solution Patterns
API and Big Data Solution Patterns API and Big Data Solution Patterns
API and Big Data Solution Patterns
WSO2
 
Visual Studio LightSwitch
Visual Studio LightSwitchVisual Studio LightSwitch
Visual Studio LightSwitch
Danijel Malik
 
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
WSO2
 

Was ist angesagt? (17)

Api gateway : To be or not to be
Api gateway : To be or not to beApi gateway : To be or not to be
Api gateway : To be or not to be
 
Managing ESB artifacts with the WSO2 Governance Registry
Managing ESB artifacts with the WSO2 Governance Registry Managing ESB artifacts with the WSO2 Governance Registry
Managing ESB artifacts with the WSO2 Governance Registry
 
WSO2 Enterprise Integrator Deployment Patterns
WSO2 Enterprise Integrator Deployment PatternsWSO2 Enterprise Integrator Deployment Patterns
WSO2 Enterprise Integrator Deployment Patterns
 
Reactive programming with spring web flux
Reactive programming with spring web fluxReactive programming with spring web flux
Reactive programming with spring web flux
 
Microservices Vienna 2015
Microservices Vienna 2015Microservices Vienna 2015
Microservices Vienna 2015
 
Database component in mule
Database component in muleDatabase component in mule
Database component in mule
 
API and Big Data Solution Patterns
API and Big Data Solution Patterns API and Big Data Solution Patterns
API and Big Data Solution Patterns
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
 
MuleSoft Database Connector
MuleSoft Database ConnectorMuleSoft Database Connector
MuleSoft Database Connector
 
Visual Studio LightSwitch
Visual Studio LightSwitchVisual Studio LightSwitch
Visual Studio LightSwitch
 
Tokyo Azure Meetup #6 - Azure Monthly Update - June
Tokyo Azure Meetup #6 - Azure Monthly Update - JuneTokyo Azure Meetup #6 - Azure Monthly Update - June
Tokyo Azure Meetup #6 - Azure Monthly Update - June
 
WSO2 API microgateway introduction
WSO2 API microgateway introductionWSO2 API microgateway introduction
WSO2 API microgateway introduction
 
WSO2 Product Release Webinar: WSO2 Dashboard Server 2.0
WSO2 Product Release Webinar: WSO2 Dashboard Server 2.0WSO2 Product Release Webinar: WSO2 Dashboard Server 2.0
WSO2 Product Release Webinar: WSO2 Dashboard Server 2.0
 
FusionReactor - FusionCLOUD overview
FusionReactor - FusionCLOUD overviewFusionReactor - FusionCLOUD overview
FusionReactor - FusionCLOUD overview
 
FusionReactor - FusionCLOUD overview
FusionReactor  - FusionCLOUD overview FusionReactor  - FusionCLOUD overview
FusionReactor - FusionCLOUD overview
 
Developing, Administering and Debugging with WSO2 Enterprise Integrator
Developing, Administering and Debugging with WSO2 Enterprise IntegratorDeveloping, Administering and Debugging with WSO2 Enterprise Integrator
Developing, Administering and Debugging with WSO2 Enterprise Integrator
 
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
 

Andere mochten auch

Andere mochten auch (8)

Coming to REST
Coming to RESTComing to REST
Coming to REST
 
Floyd Collins
Floyd CollinsFloyd Collins
Floyd Collins
 
Wood Aged Holdings
Wood Aged HoldingsWood Aged Holdings
Wood Aged Holdings
 
Helpful Animals by N
Helpful Animals by NHelpful Animals by N
Helpful Animals by N
 
Wood Aged Whiskey
Wood Aged WhiskeyWood Aged Whiskey
Wood Aged Whiskey
 
Carlsbad Cavern Project
Carlsbad Cavern ProjectCarlsbad Cavern Project
Carlsbad Cavern Project
 
User Plans for Integrated Collaboration Services with Unified Communications
User Plans for Integrated Collaboration Services with Unified CommunicationsUser Plans for Integrated Collaboration Services with Unified Communications
User Plans for Integrated Collaboration Services with Unified Communications
 
Helpful Animals by N
Helpful Animals by NHelpful Animals by N
Helpful Animals by N
 

Ähnlich wie The Spring Framework

pranayJ
pranayJpranayJ
pranayJ
Pray B
 

Ähnlich wie The Spring Framework (20)

Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS MiddlewareOracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
 
Building cloud native data microservice
Building cloud native data microserviceBuilding cloud native data microservice
Building cloud native data microservice
 
MVC architecture by Mohd.Awais on 18th Aug, 2017
MVC architecture by Mohd.Awais on 18th Aug, 2017MVC architecture by Mohd.Awais on 18th Aug, 2017
MVC architecture by Mohd.Awais on 18th Aug, 2017
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC
 
pranayJ
pranayJpranayJ
pranayJ
 
Trinada pabolu profile
Trinada pabolu profileTrinada pabolu profile
Trinada pabolu profile
 
SQL Server 2008 Migration
SQL Server 2008 MigrationSQL Server 2008 Migration
SQL Server 2008 Migration
 
MVP in Android by Ratanak
MVP in Android by RatanakMVP in Android by Ratanak
MVP in Android by Ratanak
 
Cloud APIs Overview Tucker
Cloud APIs Overview   TuckerCloud APIs Overview   Tucker
Cloud APIs Overview Tucker
 
Introduction to j2 ee frameworks
Introduction to j2 ee frameworksIntroduction to j2 ee frameworks
Introduction to j2 ee frameworks
 
DesignMind SQL Server 2008 Migration
DesignMind SQL Server 2008 MigrationDesignMind SQL Server 2008 Migration
DesignMind SQL Server 2008 Migration
 
Web tier-framework-mvc
Web tier-framework-mvcWeb tier-framework-mvc
Web tier-framework-mvc
 
Multi client Development with Spring
Multi client Development with SpringMulti client Development with Spring
Multi client Development with Spring
 
MVC + ORM (with project implementation)
MVC + ORM (with project implementation)MVC + ORM (with project implementation)
MVC + ORM (with project implementation)
 
NOVA SQL MeetUp Webinar Slides - June 5, 2020 Chris Seferlis - Azure SQL Mana...
NOVA SQL MeetUp Webinar Slides - June 5, 2020 Chris Seferlis - Azure SQL Mana...NOVA SQL MeetUp Webinar Slides - June 5, 2020 Chris Seferlis - Azure SQL Mana...
NOVA SQL MeetUp Webinar Slides - June 5, 2020 Chris Seferlis - Azure SQL Mana...
 
Trinada pabolu profile
Trinada pabolu profileTrinada pabolu profile
Trinada pabolu profile
 
Convertigo Mobile Application Development platform for Enterprises
Convertigo Mobile Application Development platform for EnterprisesConvertigo Mobile Application Development platform for Enterprises
Convertigo Mobile Application Development platform for Enterprises
 
Framework adoption for java enterprise application development
Framework adoption for java enterprise application developmentFramework adoption for java enterprise application development
Framework adoption for java enterprise application development
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVC Introduction to ASP.NET MVC
Introduction to ASP.NET MVC
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

The Spring Framework

  • 2. The Spring Framework: BIG SMART DATA ⁻ What is Spring ⁻ Modules ⁻ Spring MVC
  • 3. What is Spring? ̵ Comprehensive Programming/Config model ̵ Modern Java-based (JVM) Enterprise ̵ Focus: Lightweight & “Plumbing” ̵ Flexible Dependency Injection ̵ Infrastructure (support) for declarative: ̵ transactions ̵ caching ̵ validation ̵ formatting BIG SMART DATA Spring Origin: Rod Johnson (Expert One-on-One J2EE Design and Development)
  • 4. What is Spring? ̵ Powerful abstractions: ̵ JDBC, JPA, JTA, JMS ̵ Support for open source frameworks: ̵ Hibernate, Quartz ̵ Flexible Web Framework for RESTful MVC ̵ Rich testing facilities BIG SMART DATA
  • 5. ⁻ Modular in design ⁻ Incremental adoption ⁻ Range of deployment platforms, such as Tomcat & WebSphere ⁻ Citizen of major clouds such as Heroku, VMware, & Amazon What is Spring? BIG SMART DATA
  • 6. • Dependency Injection • Aspect-oriented programming • Data access framework • Transaction management framework • Remote access framework • Convention-over-configuration • Model-view-controller framework BIG SMART DATA Spring Modules
  • 7. • Inversion of control container • Uses Java Reflection • Creates managed objects (“beans”) • Dependency Lookup • Dependency Injection Patterns: • Constructors • Properties • Factories BIG SMART DATA Dependency Injection Spring Modules
  • 8. BIG SMART DATA Dependency Injection Spring Modules The Spring Container Fully configured system Configuration Metadata Your Business Objects (POJOs) produces
  • 9. • AOP: • increases modularity • allows for separation of cross- cutting concerns BIG SMART DATA Aspect-oriented framework Spring Modules
  • 10. • Resource management • Exception handling • Transaction participation • Resource unwrapping • Abstraction BIG SMART DATA Data access framework Spring Modules
  • 11. • Spring brings transaction abstractions: • global, local, nested • Platform TransactionManager • Transaction Template • metadata or Java annotations BIG SMART DATA Transaction management framework Spring Modules
  • 12. • Abstraction for various RPC technologies BIG SMART DATA Remote access framework Spring Modules Convention-over-configuration • Spring Roo (http://www.springsource.org/spring-roo)
  • 13. • Request-based framework • Strategy interfaces • GOAL: Simple and clear BIG SMART DATA MVC Framework Spring Modules
  • 14. • Front Controller: DispatcherServlet Class BIG SMART DATA MVC Framework Spring Modules
  • 15. • Clear separation of roles: Each role (controller, validator, command object, DispatcherServlet, etc) can be fulfilled by a specialized object • Configuration of both framework and application classes as JavaBeans: BIG SMART DATA MVC Framework Spring Modules
  • 16. • Adaptability & flexibility: Define any controller method signature you need, possibly using one of the parameter annotations • Reusable business code: Use existing business objects as command or form objects instead of mirroring them to extend a particular framework base class BIG SMART DATA MVC Framework Spring Modules
  • 17. • Customizable binding & validation • Customizable handler mapping & view resolution • Flexible model transfer: Model transfer with a name/value Map supports easy integration with any view technology • Customizable locale and theme resolution • Support for JSPs with/without Spring tag library BIG SMART DATA MVC Framework Spring Modules
  • 18. • Support for JSTL • Support for Velocity without the need for extra bridges • Spring tag library for data binding & themes • JSP form tag library BIG SMART DATA MVC Framework Spring Modules
  • 19. Spring Resources Tutorials: Developing a Spring Framework MVC application: http://static.springsource.org/docs/Spring-MVC-step-by-step/ Introduction to Spring Web MVC: https://netbeans.org/kb/docs/web/quickstart-webapps-spring.html Resources: The Spring Framework: http://www.springsource.org/spring-framework Modern Web: http://www.springsource.org/features/modern-web NetBeans IDE: http://netbeans.org BIG SMART DATA