Rod Johnson created the Spring framework in 2002 to simplify enterprise Java development. Major versions included support for annotations in Spring 2.5 in 2007 and Java configuration in Spring 3.2 in 2012. The Spring framework uses beans and initialization processes like defining bean properties with XML or annotations. It supports features such as proxies, bean definition metadata, bean factories, and bean post processors to manage the lifecycle and configuration of beans.
2. Father of Spring - Rod Johnson
• “Expert One-on-One J2EE Design
Development” Author
• Spring Source co-founder
• Nature lover
• PhD of Musicology
2
3. Version history
• The first version of the Spring framework was written by Rod Johnson along with a book in 2002.
• The framework was first released in June 2003 under the Apache license version 2.0.
• The first milestone release of Spring framework (1.0) was released in March 2004.
• Spring 2.0, which came in 2006, simplified the XML config files.
• Spring 2.5, which came in 2007, introduced annotation configurations.
• Spring 3.2, which came in 2012, introduced Java configuration, had support for Java 7, Hibernate 4, Servlet 3.0, and also
required a minimum of Java 1.5.
• Spring 4.0, which came in 2014, had support for Java 8.
• Spring Boot also was introduced in 2014.
• Spring 5.0 came out in 2017. Spring Boot 2.x has support for Spring 5.
3
7. BeanDefinition
• Java class full name (with packages)
• The unique identifier (if exists)
• Configs (init method, bean scope etc)
• Constructor args
• Setter args
7
8. BeanFactoryPostProcessor (BFPP)
• Transformations to groups of BeanDefinitions, before
any objects will be created
• Useful implementations are provided by framework
• Contains single method:
void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
throws BeansException;
8
9. FactoryBean
•Old way, used before Java Config
•BeanFactory can deal with it
public interface FactoryBean<T> {
T getObject() throws Exception;
Class<?> getObjectType();
boolean isSingleton();
}
9