- Spring Containers are Provided to take care of Spring Beans Life Cycle.
- Spring containers are also perform Dependency Injection on Spring beans in 2 ways, in configuration file every bean/resource configured with '<bean>' tag.
- If we use '<property>' tag to perform dependency injection then container performs 'setter-injection' ,if we use '<constructor-arg>' tag to perform dependency injection then container performs 'Constructor-Injection' mode dependency injection.
- The Java classes that we are using as resources of spring application are called as Spring Resources.
- To configure these Spring Beans we need Spring configuration file. 'anyname'.xml can be taken as spring configuration file.
- Underlying container will use this configuration file to recognize resources.
- BeanFactory
- ApplicationContext
BeanFactory:
- To Activate 'BeanFactory' we need an Object of class which implements "org.springframework.beans.factory.BeanFactory" interface.
- "org.springframework.beans.factory.xml.XmlBeanFactory" is most commonly used implementation class of 'BeanFactory' interface.
- To create Object of 'XmlBeanFactory' we need 'FileSystemResource' Object
Activating 'BeanFactory' Container.....
//Creating a resource
FileSystemRecource res=new FileSystemResource("springcfgfile.xml");
or
ClassPathResource res=new ClassPathReosurce("springcfgfile.xml");
//Activate 'BeanFactory' container.
XmlBeanFactory factory=new XmlBeanFactory(res);
FileSystemRecource res=new FileSystemResource("springcfgfile.xml");
or
ClassPathResource res=new ClassPathReosurce("springcfgfile.xml");
//Activate 'BeanFactory' container.
XmlBeanFactory factory=new XmlBeanFactory(res);
FileSystemResource: locates the given spring configuration file from the specified path of File System.
ClassPathResource: locates the given spring configuration file from the directories & jars that are added in class-path.
ApplicationContext:
- ApplicationContext container is Enhancement of BeanFactory Container.
- To Activate 'ApplicationContext' we need an Object of class which implements "org.springframework.context.ApplicationContext" interface.
- There are 3 popular classes implementing the this Interface
- FileSystemAmlApplicationContext: Activates Spring Container by reading the spring configuration file from the specified path of 'File System'.
FileSystemXmlApplicationContext context=new FileSystemXmlApplicationContext("springconfigurationfile.xml");
or
ApplicationContext context=new FileSystemXmlApplicationContext("springconfigurationfile.xml");
or
ApplicationContext context=new FileSystemXmlApplicationContext("springconfigurationfile.xml");
- ClassPathXmlApplicationContext: Activates Spring Container by reading the spring configuration file from the class path folders & jars.
ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("springconfigurationfile.xml");
or
ApplicationContext context=new ClassPathXmlApplicationContext("springconfigurationfile.xml");
or
ApplicationContext context=new ClassPathXmlApplicationContext("springconfigurationfile.xml");
- WebXmlApplicationContext: Activates Spring Container by reading the spring configuration file from web application resources(in web environment).
0 comments:
Post a Comment