Introduction to Spring

What is Spring Framework?

  • lightweight

  • opens source java based

  • developed by Rod Johnson in 2003

  • to develop enterprise-level applications

  • provides support to many other frameworks : Hibernate, Tapestry, EJB, JSF, Struts

  • framework of frameworks

  • application framework and IOC (Inversion of Control) container for the Java platform

  • contains several modules like IOC, AOP, DAO, Context, WEB MVC, etc.

Why to use Spring?

  • is a Java platform that is open source

  • first released under the Apache 2.0 license in June 2003

  • Spring is a featherweight (basic version 2MB)

  • By offering a POJO-based programming model : make J2EE development easier to use and to promote good programming habits

Applications of Spring

  • POJO : POJOs is that you don’t require an EJB container product like an application server; instead, you may use a powerful servlet container like Tomcat or a commercial product.

  • Modular : is set up in a modular approach - if there are a lot of packages and classes, you only need to worry about the ones you need and ignore the rest.

  • Integration with existing frameworks : Spring does not reinvent the wheel; rather, it makes extensive use of existing technologies such as numerous ORM frameworks, logging frameworks, JEE, Quartz, and JDK timers, and other view technologies.

  • Testablity : using JavaBeanstyle POJOs makes it easier to employ dependency injection for injecting test data.

  • Web MVC : well-designed web MVC framework that is an excellent alternative to struts,etc.

  • Central Exception Handling : provides a handy API for converting technology-specific exceptions (such as those raised by JDBC, Hibernate, or JDO) into consistent, unchecked exceptions.

  • Lightweight : IoC containers are typically lightweight => This is useful for creating and distributing programmes on systems with limited memory and CPU resources.