IEEE Day 2013
Ilkin Ashrafli
Internal Applications team Developer
Azercell Telecom LLC
http://www.linkedin.com/in/ilkinesr...
me
Graduated from Applied Mathematics of Baku State
University
Java, Java EE, PL/SQL Developer
Internal Applications team ...
outline
Spring framework
Inversion of Control(IoC)
Spring framework and JEE
Spring MVC
Some statistics
Survey
? {}
10/01/1...
SPRING FRAMEWORK
10/01/134
what is spring framework?
10/01/135
what is spring framework?
First version Released in 2003 by Rod Johnson
Java Enterprise application framework for easy and...
what is spring framework?
Lightweight
Inversion of control (IOC)
Aspect oriented (AOP)
MVC Framework
JDBC Exception Handli...
why use spring framework?
Modular
Testable
Adaptive to change
10/01/138
why use spring framework?
Proven
Power of IoC, wiring components (JavaBeans)
through Dependency
Easy test
Easy use other f...
spring framework architecture
10/01/1310
solutions
Modern web (rest, html5, ajax)
Data access (rdbms, nosql, mapreduce, cloud)
Integration (messaging, batch applic...
solutions
Spring frameworkSpring framework
Spring Batch
Spring Integration
Spring Security
Spring Web Service
Spring Data
...
INVERSION OF
CONTROL(DEPENDENCY
INJECTION) - IOC
10/01/1313
inversion of control - IoC
Hollywood principle
Don’t call me, I’ll call youDon’t call me, I’ll call you
10/01/1314
inversion of control - IoC
IoC – is a common characteristic of frameworks.
Inversion of Control serves as a design guideli...
inversion of control - IoC
In OO Design, components/objects are desired to be
reusable
However, components depends with on...
inversion of control - IoC
Component dependency resolution
Among Components
Within Component
Configuration management
Life...
inversion of control - IoC
Apache Avalon
Apache Hivemine
Dagger (for Android and
Java)
Google Guice
Butterfly DI DSL
Nano ...
inversion of control - IoC
Java EE: EJB and EJB Container
Spring: POJO and POJO Container
Spring vs Java EE – Lightweight
...
inversion of control - IoC
10/01/1320
inversion of control - IoC
10/01/1321
inversion of control - IoC
10/01/1322
inversion of control - IoC
10/01/1323
inversion of control - IoC
10/01/1324
SPRING FRAMEWORK AND JEE
10/01/1325
spring framework and jee
It’s hard to say whish is the best
10/01/1326
spring framework and jee
Spring
Spring is framework and single
vendor solutions
Has made tremendous
contributions to the
d...
spring framework and jee
Spring
Have a look at the job postings
in Monster or Dice. A very
large proportion of Java jobs
r...
spring framework and jee
10/01/1329
spring framework and jee
10/01/1330
spring framework and jee
10/01/1331
SPRING MVC
10/01/1332
spring mvc
Comes with Spring distribution
Well integrated with the rest of Spring
Very extensible
10/01/1333
spring mvc
MVC for Java Web Application
Model : Java POJO
View : JSP pages
Controller : Java Servlet
MVC for Spring
Model ...
spring mvc
10/01/1335
spring mvc
10/01/1336
spring mvc
10/01/1337
spring mvc
10/01/1338
spring mvc
10/01/1339
spring mvc
10/01/1340
spring mvc
10/01/1341
spring mvc
10/01/1342
spring mvc
10/01/1343
spring mvc
10/01/1344
spring mvc
Spring MVC provide a clear separation between a
model, view and Controller
Provide both XML-based and annotatio...
spring ide
10/01/1346
spring ide
SpringSource Tool Suite (STS)
http://spring.io/tools/sts
Eclipse-powered development environment for
building S...
SOME STATISTICS
10/01/1348
some statistics
10/01/1349
some statistics
InfoQ Research
– Top 20 Web Frameworks for the JVM (2012)
– http://www.infoq.com/research/jvm-web-framewor...
some statistics
10/01/1351
some statistics
Raible Designs
– JVM Web framework matrix
– http://bit.ly/jvm-frameworks-matrix
10/01/1352
some statistics
10/01/1353
references
Spring – www.spring.io
Inversion of Control -
http://www.martinfowler.com/articles/injection.html
Java Developm...
books
10/01/1355
survey
http://bit.ly/ieeeSpring
10/01/1356
??
10/01/1357
Thanks !!
Upcoming SlideShare
Loading in …5
×

IEEE Day 2013 Baku - Spring Framework overview and Spring MVC

1,536 views
1,344 views

Published on

http://bit.ly/ieeeSpring

Published in: Technology, Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,536
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
51
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

IEEE Day 2013 Baku - Spring Framework overview and Spring MVC

  1. 1. IEEE Day 2013 Ilkin Ashrafli Internal Applications team Developer Azercell Telecom LLC http://www.linkedin.com/in/ilkinesrefli https://www.facebook.com/ilkin.esrefli 01 October 2013, Qafqaz University Spring Framework overview and Spring MVC
  2. 2. me Graduated from Applied Mathematics of Baku State University Java, Java EE, PL/SQL Developer Internal Applications team developer at Azercell Telecom LLC 10/01/132
  3. 3. outline Spring framework Inversion of Control(IoC) Spring framework and JEE Spring MVC Some statistics Survey ? {} 10/01/133
  4. 4. SPRING FRAMEWORK 10/01/134
  5. 5. what is spring framework? 10/01/135
  6. 6. what is spring framework? First version Released in 2003 by Rod Johnson Java Enterprise application framework for easy and quick development Open source Using Pojo Most popular application development framework for enterprise java 10/01/136
  7. 7. what is spring framework? Lightweight Inversion of control (IOC) Aspect oriented (AOP) MVC Framework JDBC Exception Handling 10/01/137
  8. 8. why use spring framework? Modular Testable Adaptive to change 10/01/138
  9. 9. why use spring framework? Proven Power of IoC, wiring components (JavaBeans) through Dependency Easy test Easy use other frameworks Insulates a user of a functionality from implementation details Hides unnecessary exceptions 10/01/139
  10. 10. spring framework architecture 10/01/1310
  11. 11. solutions Modern web (rest, html5, ajax) Data access (rdbms, nosql, mapreduce, cloud) Integration (messaging, batch applications) Mobile (android, ios) Social network (facebook twitter linkedin) Security (authentication and authorization) Cloud ready (google app engine, amazon ec2, cloud foundry) 10/01/1311
  12. 12. solutions Spring frameworkSpring framework Spring Batch Spring Integration Spring Security Spring Web Service Spring Data Spring Hadoop Spring Mobile Spring Social Spring Web Flow Spring BlazeDS Spring Roo Spring .NET Spring Python Grails etc. 10/01/1312
  13. 13. INVERSION OF CONTROL(DEPENDENCY INJECTION) - IOC 10/01/1313
  14. 14. inversion of control - IoC Hollywood principle Don’t call me, I’ll call youDon’t call me, I’ll call you 10/01/1314
  15. 15. inversion of control - IoC IoC – is a common characteristic of frameworks. Inversion of Control serves as a design guideline According to Martin Fowler the etymology of the phrase dates back to 1988 10/01/1315
  16. 16. inversion of control - IoC In OO Design, components/objects are desired to be reusable However, components depends with one another to deliver the solution Such dependencies among components results the tight coupling 10/01/1316
  17. 17. inversion of control - IoC Component dependency resolution Among Components Within Component Configuration management Lifecycle management 10/01/1317
  18. 18. inversion of control - IoC Apache Avalon Apache Hivemine Dagger (for Android and Java) Google Guice Butterfly DI DSL Nano Container Pico Container Silk DI Spring FrameworkSpring Framework 10/01/1318
  19. 19. inversion of control - IoC Java EE: EJB and EJB Container Spring: POJO and POJO Container Spring vs Java EE – Lightweight Object Creation Object Lookup Object Life Cycle Management 10/01/1319
  20. 20. inversion of control - IoC 10/01/1320
  21. 21. inversion of control - IoC 10/01/1321
  22. 22. inversion of control - IoC 10/01/1322
  23. 23. inversion of control - IoC 10/01/1323
  24. 24. inversion of control - IoC 10/01/1324
  25. 25. SPRING FRAMEWORK AND JEE 10/01/1325
  26. 26. spring framework and jee It’s hard to say whish is the best 10/01/1326
  27. 27. spring framework and jee Spring Spring is framework and single vendor solutions Has made tremendous contributions to the development community Supports for almost any web container Jee JEE is standard Java Community Process Program - Java Specification Request(JSR) JEE needs application server(glassfish, jboss, weblogic etc.) 10/01/1327
  28. 28. spring framework and jee Spring Have a look at the job postings in Monster or Dice. A very large proportion of Java jobs require Spring experience There has been a lot of innovation lately in the cloud space Jee Java finally woke up and responded with Java EE 6 JEE, JSF 2.0 is more critical. Java badly needs a modern MVC framework 10/01/1328
  29. 29. spring framework and jee 10/01/1329
  30. 30. spring framework and jee 10/01/1330
  31. 31. spring framework and jee 10/01/1331
  32. 32. SPRING MVC 10/01/1332
  33. 33. spring mvc Comes with Spring distribution Well integrated with the rest of Spring Very extensible 10/01/1333
  34. 34. spring mvc MVC for Java Web Application Model : Java POJO View : JSP pages Controller : Java Servlet MVC for Spring Model : Java Map View : Pluggable view technology(JSP, tiles, velocity etc) Controller : Spring controller classes 10/01/1334
  35. 35. spring mvc 10/01/1335
  36. 36. spring mvc 10/01/1336
  37. 37. spring mvc 10/01/1337
  38. 38. spring mvc 10/01/1338
  39. 39. spring mvc 10/01/1339
  40. 40. spring mvc 10/01/1340
  41. 41. spring mvc 10/01/1341
  42. 42. spring mvc 10/01/1342
  43. 43. spring mvc 10/01/1343
  44. 44. spring mvc 10/01/1344
  45. 45. spring mvc Spring MVC provide a clear separation between a model, view and Controller Provide both XML-based and annotation-based approaches Enriched by Spring application context Takes convention over configuration approach Uses open-close principle 10/01/1345
  46. 46. spring ide 10/01/1346
  47. 47. spring ide SpringSource Tool Suite (STS) http://spring.io/tools/sts Eclipse-powered development environment for building Spring-powered enterprise applications Supports Java, Spring, Groovy and Grails Comes with developer edition of vFabric tc Server vFabric tc Server is Tomcat that is optimized for Spring 10/01/1347
  48. 48. SOME STATISTICS 10/01/1348
  49. 49. some statistics 10/01/1349
  50. 50. some statistics InfoQ Research – Top 20 Web Frameworks for the JVM (2012) – http://www.infoq.com/research/jvm-web-frameworks 10/01/1350
  51. 51. some statistics 10/01/1351
  52. 52. some statistics Raible Designs – JVM Web framework matrix – http://bit.ly/jvm-frameworks-matrix 10/01/1352
  53. 53. some statistics 10/01/1353
  54. 54. references Spring – www.spring.io Inversion of Control - http://www.martinfowler.com/articles/injection.html Java Development With Spring Framework – Johnson, Hoeller et al. Spring in Action – Walls, Breidenbach 10/01/1354
  55. 55. books 10/01/1355
  56. 56. survey http://bit.ly/ieeeSpring 10/01/1356
  57. 57. ?? 10/01/1357
  58. 58. Thanks !!

×