SlideShare a Scribd company logo
1 of 25
Store Of Core Spring
                                  Mak Bhatamrekar
                   http://github.com/makrand-bkar

                                             AJCP




http://meetup.com/my-ajcp
Atlanta Java Concept Pros
Agenda

•   The Problem
•   Solution With No Spring and Challenges
•   Magic Of Spring Core/ DI
•   More on XML Config & Co`ncepts
•   Must Know Key Concepts
•   Whats new Spring 3
•   Recap
Dependencies




               
TATA NANO
Issues
Multiple Programmers              Practical Aspects
• Create Dummy Classes            ? Different Test and
   – Method Names e.g getType()   Production Configurations
     in engine
• Code and Compile                ?Reduced Test Cycles
   – Add image here

                                  ?Cluttered Business Logic
Spring Framework – The Hero
              Important Dates
              • Spring 1.0 - 2004
              • Spring 1.2.6 – Won Awards
              • Spring 2.0 – Oct 2006
              • Spring 2.5 – Nov 2007
              • Spring 3.0 – Dec 2009
              • Spring 3.1 – Dec 2011
              • Spring 3.2.1 – Jan 2013
              • Spring 4.0 – End of Year
Spring Framework
Josh long-a-walking-tour-of-spring-3-1-pdf-d421509802 -
Spring Projects
•   Spring Security
•   Spring Integration
•   Spring Batch
•   Spring Data
•   Spring Web Services
•   Spring Web
•   Spring Social
•   Spring Android
•   More..
DriverMain
Dependency Injection is a form of Inversion Of
Control.
Also know as the Hollywood Principle
   “Don’t call us, we’ll call you! “
DI Types
• XML Based
• Annotation Based
  – Bypass some of the XML Configurations with XML
    Support.
• Java Based
<bean id="car" class="com.ajcp.withspring.v1.testimpl.Car">
<!-- setter Injection example -->
<constructor-arg ref="tireList" />
<bean id="engine" class="com.ajcp.withspring.v1.testimpl.Engine">
<constructor-arg ref="engine" />
<property name="type" value="V4"></property>
</bean>
</bean>
Important Configs
•    <context:annotation-config />
•   <context:component-scan>
•   p: -- namespace for setter injections
•   c: -- namespace for getter injects
•   util: -- useful utilties for DI
•   aop – aop support
•   tx – transaction support
At it’s core – Spring is a framework for wiring up
your entire application
@Autowired
• byName - by property name
• byType - by property type
• Constructor – Similar to byType but applies to
  constructor args
• Autodetect – first autowires by constructor, if
  that fails autowires byType.
<context:annotation-config />
                     <context:component-scan base-
                     package="com.ajcp.withspring.v2annotation.testimpl"
                     />
                     <bean id="brand"
                     class="com.ajcp.withspring.v2annotation.testimpl.Bran
                     d"/>



<!– Autowire byType -->
<bean id="tire1"
class="com.ajcp.withspring.v2annotation.testimpl.TireImpl"
 autowire="byType"></bean>




   <!– Autowire constructor-->
   <bean id="carService"
   class="com.ajcp.withspring.v2annotation.testimpl.CarImpl"
   autowire="constructor">
Spring DI Annotations
•   @Required
•   @Autowired
•   @Qualifier
•   @Resource – JSR Annotation –
    – Combines @Autowired and @Qualifier
• @Component
• @Service
• @Repository
@Autowired // beans are autowired by Type
private EngineService engineService;
@Autowired
@Qualifier("tire1")
private TireService tireService;
public static void main(String[] args) {
                                         ApplicationContext context =
                                         new
                                         ClassPathXmlApplicationContext("BeansWit
                                         Annotation.xml");
@Bean                                    Driver driver = (Driver)
 @Scope("prototype")                     context.getBean("driver");
 public EngineService engineService(){   driver.createCarAndDrive();
   EngineService e = new EngineImpl();
   e.setType(EngineImpl.V6_ENGINE);
   return e;
 }




                             Java Based Config
Bean Scopes
•   Singleton (default)
•   Prototype
•   Request
•   Session
•   Global session
Steps To Execute SourceCode
1. Download from github, Zip option is also
   there
2. cd SpringCoreCarSample
3. mvn compile eclipse:eclipse
4. Open Eclipse
5. Select File ->Import -> Existing Projects Into..
6. Run the Main classes as Application from
   Eclipse
Reference Links
Meetup.com / Atlanta Spring Users Group

•https://github.com/makrand-bkar/SpringCoreCarSample
•http://www.tutorialspoint.com/spring/
•http://www.mkyong.com/spring/
•http://www.springsource.org/tutorials
Store Of Core Spring
                                 Mak Bhatamrekar
           github :http://github.com/makrand-bkar
                                  twitter : mak-bkar
                         url : www.careerinjava.com



http://meetup.com/my-ajcp
Atlanta Java Concept Pros

More Related Content

What's hot

Modern Functional Fluent ColdFusion REST Apis
Modern Functional Fluent ColdFusion REST ApisModern Functional Fluent ColdFusion REST Apis
Modern Functional Fluent ColdFusion REST ApisOrtus Solutions, Corp
 
SharePoint Fest Seattle - SharePoint Framework, Angular & Azure Functions
SharePoint Fest Seattle - SharePoint Framework, Angular & Azure FunctionsSharePoint Fest Seattle - SharePoint Framework, Angular & Azure Functions
SharePoint Fest Seattle - SharePoint Framework, Angular & Azure FunctionsSébastien Levert
 
Rails Engine | Modular application
Rails Engine | Modular applicationRails Engine | Modular application
Rails Engine | Modular applicationmirrec
 
Spring boot
Spring bootSpring boot
Spring bootsdeeg
 
Rails Engine Patterns
Rails Engine PatternsRails Engine Patterns
Rails Engine PatternsAndy Maleh
 
An Intro to Angular 2
An Intro to Angular 2An Intro to Angular 2
An Intro to Angular 2Ron Heft
 
Enemy of the state
Enemy of the stateEnemy of the state
Enemy of the stateMike North
 
Sling Component Filters in CQ5
Sling Component Filters in CQ5 Sling Component Filters in CQ5
Sling Component Filters in CQ5 connectwebex
 
Getting Reactive with Spring Framework 5.0’s GA release
Getting Reactive with Spring Framework 5.0’s GA releaseGetting Reactive with Spring Framework 5.0’s GA release
Getting Reactive with Spring Framework 5.0’s GA releaseVMware Tanzu
 
Single Page Applications with AngularJS 2.0
Single Page Applications with AngularJS 2.0 Single Page Applications with AngularJS 2.0
Single Page Applications with AngularJS 2.0 Sumanth Chinthagunta
 
Introduction to Sightly and Sling Models
Introduction to Sightly and Sling ModelsIntroduction to Sightly and Sling Models
Introduction to Sightly and Sling ModelsStefano Celentano
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React NativeRami Sayar
 
Taking Micronaut out for a spin
Taking Micronaut out for a spinTaking Micronaut out for a spin
Taking Micronaut out for a spinAndres Almiray
 
API Development with Laravel
API Development with LaravelAPI Development with Laravel
API Development with LaravelMichael Peacock
 
Agile documentation with Confluence and Sparx Enterprise Architect
Agile documentation with Confluence and Sparx Enterprise ArchitectAgile documentation with Confluence and Sparx Enterprise Architect
Agile documentation with Confluence and Sparx Enterprise ArchitectPer Spilling
 
Angular 2.0: Getting ready
Angular 2.0: Getting readyAngular 2.0: Getting ready
Angular 2.0: Getting readyAxilis
 
Angular2 + AWS Lambdaでサーバサイドレンダリングしてみた
Angular2 + AWS LambdaでサーバサイドレンダリングしてみたAngular2 + AWS Lambdaでサーバサイドレンダリングしてみた
Angular2 + AWS Lambdaでサーバサイドレンダリングしてみた暁 三宅
 
SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...
SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...
SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...Sencha
 

What's hot (20)

Modern Functional Fluent ColdFusion REST Apis
Modern Functional Fluent ColdFusion REST ApisModern Functional Fluent ColdFusion REST Apis
Modern Functional Fluent ColdFusion REST Apis
 
Angular Classy
Angular ClassyAngular Classy
Angular Classy
 
SharePoint Fest Seattle - SharePoint Framework, Angular & Azure Functions
SharePoint Fest Seattle - SharePoint Framework, Angular & Azure FunctionsSharePoint Fest Seattle - SharePoint Framework, Angular & Azure Functions
SharePoint Fest Seattle - SharePoint Framework, Angular & Azure Functions
 
Rails Engine | Modular application
Rails Engine | Modular applicationRails Engine | Modular application
Rails Engine | Modular application
 
Spring boot
Spring bootSpring boot
Spring boot
 
Rails Engine Patterns
Rails Engine PatternsRails Engine Patterns
Rails Engine Patterns
 
An Intro to Angular 2
An Intro to Angular 2An Intro to Angular 2
An Intro to Angular 2
 
Enemy of the state
Enemy of the stateEnemy of the state
Enemy of the state
 
Sling Component Filters in CQ5
Sling Component Filters in CQ5 Sling Component Filters in CQ5
Sling Component Filters in CQ5
 
Getting Reactive with Spring Framework 5.0’s GA release
Getting Reactive with Spring Framework 5.0’s GA releaseGetting Reactive with Spring Framework 5.0’s GA release
Getting Reactive with Spring Framework 5.0’s GA release
 
Single Page Applications with AngularJS 2.0
Single Page Applications with AngularJS 2.0 Single Page Applications with AngularJS 2.0
Single Page Applications with AngularJS 2.0
 
Spring boot
Spring bootSpring boot
Spring boot
 
Introduction to Sightly and Sling Models
Introduction to Sightly and Sling ModelsIntroduction to Sightly and Sling Models
Introduction to Sightly and Sling Models
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React Native
 
Taking Micronaut out for a spin
Taking Micronaut out for a spinTaking Micronaut out for a spin
Taking Micronaut out for a spin
 
API Development with Laravel
API Development with LaravelAPI Development with Laravel
API Development with Laravel
 
Agile documentation with Confluence and Sparx Enterprise Architect
Agile documentation with Confluence and Sparx Enterprise ArchitectAgile documentation with Confluence and Sparx Enterprise Architect
Agile documentation with Confluence and Sparx Enterprise Architect
 
Angular 2.0: Getting ready
Angular 2.0: Getting readyAngular 2.0: Getting ready
Angular 2.0: Getting ready
 
Angular2 + AWS Lambdaでサーバサイドレンダリングしてみた
Angular2 + AWS LambdaでサーバサイドレンダリングしてみたAngular2 + AWS Lambdaでサーバサイドレンダリングしてみた
Angular2 + AWS Lambdaでサーバサイドレンダリングしてみた
 
SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...
SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...
SenchaCon 2016: Enterprise Applications, Role Based Access Controls (RBAC) an...
 

Viewers also liked

Viewers also liked (19)

Java scriptforjavadev part1
Java scriptforjavadev part1Java scriptforjavadev part1
Java scriptforjavadev part1
 
Valhalla nov2011
Valhalla nov2011Valhalla nov2011
Valhalla nov2011
 
Uyuni salt lake (rev)
Uyuni salt lake (rev)Uyuni salt lake (rev)
Uyuni salt lake (rev)
 
Bahan taklimat guru pk1
Bahan taklimat guru pk1Bahan taklimat guru pk1
Bahan taklimat guru pk1
 
Bahan taklimat pengetua
Bahan taklimat pengetuaBahan taklimat pengetua
Bahan taklimat pengetua
 
Chi e' lo Spirito Santo
Chi e' lo Spirito SantoChi e' lo Spirito Santo
Chi e' lo Spirito Santo
 
Pelabelan guru versi taklimat pengetua
Pelabelan guru versi taklimat pengetuaPelabelan guru versi taklimat pengetua
Pelabelan guru versi taklimat pengetua
 
Sprintintegration ajip
Sprintintegration ajipSprintintegration ajip
Sprintintegration ajip
 
Bootstrapping angular js with bower grunt yeoman
Bootstrapping angular js with bower grunt yeomanBootstrapping angular js with bower grunt yeoman
Bootstrapping angular js with bower grunt yeoman
 
Anderson slides for friedman class talk RE-UPLOADED
Anderson slides for friedman class talk RE-UPLOADEDAnderson slides for friedman class talk RE-UPLOADED
Anderson slides for friedman class talk RE-UPLOADED
 
Java scriptforjavadev part2a
Java scriptforjavadev part2aJava scriptforjavadev part2a
Java scriptforjavadev part2a
 
Getting Started with J2EE, A Roadmap
Getting Started with J2EE, A RoadmapGetting Started with J2EE, A Roadmap
Getting Started with J2EE, A Roadmap
 
JavaScript JQUERY AJAX
JavaScript JQUERY AJAXJavaScript JQUERY AJAX
JavaScript JQUERY AJAX
 
Springaopdecoded ajip
Springaopdecoded ajipSpringaopdecoded ajip
Springaopdecoded ajip
 
Monitoring prints with computer vision
Monitoring prints with computer visionMonitoring prints with computer vision
Monitoring prints with computer vision
 
2 sistemas numericos
2 sistemas numericos2 sistemas numericos
2 sistemas numericos
 
famous artists
famous artists famous artists
famous artists
 
The Labour Market and Digital Jobs in Africa
The Labour Market and Digital Jobs in AfricaThe Labour Market and Digital Jobs in Africa
The Labour Market and Digital Jobs in Africa
 
Sonarjenkins ajip
Sonarjenkins ajipSonarjenkins ajip
Sonarjenkins ajip
 

Similar to Story ofcorespring infodeck

Spring boot Introduction
Spring boot IntroductionSpring boot Introduction
Spring boot IntroductionJeevesh Pandey
 
BackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applicationsBackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applicationsJoseph Khan
 
Useful practices of creation automatic tests by using cucumber jvm
Useful practices of creation automatic tests by using cucumber jvmUseful practices of creation automatic tests by using cucumber jvm
Useful practices of creation automatic tests by using cucumber jvmAnton Shapin
 
[2C2]PredictionIO
[2C2]PredictionIO[2C2]PredictionIO
[2C2]PredictionIONAVER D2
 
Micronaut Deep Dive - Devoxx Belgium 2019
Micronaut Deep Dive - Devoxx Belgium 2019Micronaut Deep Dive - Devoxx Belgium 2019
Micronaut Deep Dive - Devoxx Belgium 2019graemerocher
 
From MEAN to the MERN Stack
From MEAN to the MERN StackFrom MEAN to the MERN Stack
From MEAN to the MERN StackTroy Miles
 
Apache Cayenne for WO Devs
Apache Cayenne for WO DevsApache Cayenne for WO Devs
Apache Cayenne for WO DevsWO Community
 
Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012Dimitri de Putte
 
RSpec on Rails Tutorial
RSpec on Rails TutorialRSpec on Rails Tutorial
RSpec on Rails TutorialWen-Tien Chang
 
Spring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloudSpring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloudOrkhan Gasimov
 
A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019
A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019
A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019Matt Raible
 
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...Chester Chen
 
Use Angular Schematics to Simplify Your Life - Develop Denver 2019
Use Angular Schematics to Simplify Your Life - Develop Denver 2019Use Angular Schematics to Simplify Your Life - Develop Denver 2019
Use Angular Schematics to Simplify Your Life - Develop Denver 2019Matt Raible
 
Spring data jpa are used to develop spring applications
Spring data jpa are used to develop spring applicationsSpring data jpa are used to develop spring applications
Spring data jpa are used to develop spring applicationsmichaelaaron25322
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performanceEngine Yard
 
Spring boot for buidling microservices
Spring boot for buidling microservicesSpring boot for buidling microservices
Spring boot for buidling microservicesNilanjan Roy
 
決済サービスのSpring Bootのバージョンを2系に上げた話
決済サービスのSpring Bootのバージョンを2系に上げた話決済サービスのSpring Bootのバージョンを2系に上げた話
決済サービスのSpring Bootのバージョンを2系に上げた話Ryosuke Uchitate
 

Similar to Story ofcorespring infodeck (20)

Spring boot Introduction
Spring boot IntroductionSpring boot Introduction
Spring boot Introduction
 
BackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applicationsBackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applications
 
Spring
SpringSpring
Spring
 
Useful practices of creation automatic tests by using cucumber jvm
Useful practices of creation automatic tests by using cucumber jvmUseful practices of creation automatic tests by using cucumber jvm
Useful practices of creation automatic tests by using cucumber jvm
 
[2C2]PredictionIO
[2C2]PredictionIO[2C2]PredictionIO
[2C2]PredictionIO
 
Micronaut Deep Dive - Devoxx Belgium 2019
Micronaut Deep Dive - Devoxx Belgium 2019Micronaut Deep Dive - Devoxx Belgium 2019
Micronaut Deep Dive - Devoxx Belgium 2019
 
From MEAN to the MERN Stack
From MEAN to the MERN StackFrom MEAN to the MERN Stack
From MEAN to the MERN Stack
 
Apache Cayenne for WO Devs
Apache Cayenne for WO DevsApache Cayenne for WO Devs
Apache Cayenne for WO Devs
 
Spring boot wednesday
Spring boot wednesdaySpring boot wednesday
Spring boot wednesday
 
Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012
 
RSpec on Rails Tutorial
RSpec on Rails TutorialRSpec on Rails Tutorial
RSpec on Rails Tutorial
 
Spring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloudSpring Cloud: API gateway upgrade & configuration in the cloud
Spring Cloud: API gateway upgrade & configuration in the cloud
 
A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019
A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019
A Gentle Introduction to Angular Schematics - Devoxx Belgium 2019
 
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
Analytics Metrics delivery and ML Feature visualization: Evolution of Data Pl...
 
Use Angular Schematics to Simplify Your Life - Develop Denver 2019
Use Angular Schematics to Simplify Your Life - Develop Denver 2019Use Angular Schematics to Simplify Your Life - Develop Denver 2019
Use Angular Schematics to Simplify Your Life - Develop Denver 2019
 
Spring data jpa are used to develop spring applications
Spring data jpa are used to develop spring applicationsSpring data jpa are used to develop spring applications
Spring data jpa are used to develop spring applications
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performance
 
Spring boot
Spring bootSpring boot
Spring boot
 
Spring boot for buidling microservices
Spring boot for buidling microservicesSpring boot for buidling microservices
Spring boot for buidling microservices
 
決済サービスのSpring Bootのバージョンを2系に上げた話
決済サービスのSpring Bootのバージョンを2系に上げた話決済サービスのSpring Bootのバージョンを2系に上げた話
決済サービスのSpring Bootのバージョンを2系に上げた話
 

Story ofcorespring infodeck

  • 1. Store Of Core Spring Mak Bhatamrekar http://github.com/makrand-bkar AJCP http://meetup.com/my-ajcp Atlanta Java Concept Pros
  • 2. Agenda • The Problem • Solution With No Spring and Challenges • Magic Of Spring Core/ DI • More on XML Config & Co`ncepts • Must Know Key Concepts • Whats new Spring 3 • Recap
  • 5.
  • 6. Issues Multiple Programmers Practical Aspects • Create Dummy Classes ? Different Test and – Method Names e.g getType() Production Configurations in engine • Code and Compile ?Reduced Test Cycles – Add image here ?Cluttered Business Logic
  • 7.
  • 8. Spring Framework – The Hero Important Dates • Spring 1.0 - 2004 • Spring 1.2.6 – Won Awards • Spring 2.0 – Oct 2006 • Spring 2.5 – Nov 2007 • Spring 3.0 – Dec 2009 • Spring 3.1 – Dec 2011 • Spring 3.2.1 – Jan 2013 • Spring 4.0 – End of Year
  • 10. Spring Projects • Spring Security • Spring Integration • Spring Batch • Spring Data • Spring Web Services • Spring Web • Spring Social • Spring Android • More..
  • 12. Dependency Injection is a form of Inversion Of Control. Also know as the Hollywood Principle “Don’t call us, we’ll call you! “
  • 13. DI Types • XML Based • Annotation Based – Bypass some of the XML Configurations with XML Support. • Java Based
  • 14. <bean id="car" class="com.ajcp.withspring.v1.testimpl.Car"> <!-- setter Injection example --> <constructor-arg ref="tireList" /> <bean id="engine" class="com.ajcp.withspring.v1.testimpl.Engine"> <constructor-arg ref="engine" /> <property name="type" value="V4"></property> </bean> </bean>
  • 15. Important Configs • <context:annotation-config /> • <context:component-scan> • p: -- namespace for setter injections • c: -- namespace for getter injects • util: -- useful utilties for DI • aop – aop support • tx – transaction support
  • 16. At it’s core – Spring is a framework for wiring up your entire application
  • 17. @Autowired • byName - by property name • byType - by property type • Constructor – Similar to byType but applies to constructor args • Autodetect – first autowires by constructor, if that fails autowires byType.
  • 18. <context:annotation-config /> <context:component-scan base- package="com.ajcp.withspring.v2annotation.testimpl" /> <bean id="brand" class="com.ajcp.withspring.v2annotation.testimpl.Bran d"/> <!– Autowire byType --> <bean id="tire1" class="com.ajcp.withspring.v2annotation.testimpl.TireImpl" autowire="byType"></bean> <!– Autowire constructor--> <bean id="carService" class="com.ajcp.withspring.v2annotation.testimpl.CarImpl" autowire="constructor">
  • 19. Spring DI Annotations • @Required • @Autowired • @Qualifier • @Resource – JSR Annotation – – Combines @Autowired and @Qualifier • @Component • @Service • @Repository
  • 20. @Autowired // beans are autowired by Type private EngineService engineService; @Autowired @Qualifier("tire1") private TireService tireService;
  • 21. public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("BeansWit Annotation.xml"); @Bean Driver driver = (Driver) @Scope("prototype") context.getBean("driver"); public EngineService engineService(){ driver.createCarAndDrive(); EngineService e = new EngineImpl(); e.setType(EngineImpl.V6_ENGINE); return e; } Java Based Config
  • 22. Bean Scopes • Singleton (default) • Prototype • Request • Session • Global session
  • 23. Steps To Execute SourceCode 1. Download from github, Zip option is also there 2. cd SpringCoreCarSample 3. mvn compile eclipse:eclipse 4. Open Eclipse 5. Select File ->Import -> Existing Projects Into.. 6. Run the Main classes as Application from Eclipse
  • 24. Reference Links Meetup.com / Atlanta Spring Users Group •https://github.com/makrand-bkar/SpringCoreCarSample •http://www.tutorialspoint.com/spring/ •http://www.mkyong.com/spring/ •http://www.springsource.org/tutorials
  • 25. Store Of Core Spring Mak Bhatamrekar github :http://github.com/makrand-bkar twitter : mak-bkar url : www.careerinjava.com http://meetup.com/my-ajcp Atlanta Java Concept Pros

Editor's Notes

  1. Whats the Problem we are trying to solve
  2. TATA NANO has Engine on the Back when the person sits -- TODO Add the Trunk Image
  3. Spring DI which allows ot inject dependencies, so your code base is made only of interface and does not know about implementations Spring AOP is the declarative aspect which allows to add a nature to a class, like Translcation, logging Portal Service Abstracts + Good Documentation