📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
✅ Some premium posts are free to read — no account needed. Follow me on Medium to stay updated and support my writing.
🎓 Top 10 Udemy Courses (Huge Discount): Explore My Udemy Courses — Learn through real-time, project-based development.
▶️ Subscribe to My YouTube Channel (172K+ subscribers): Java Guides on YouTube
Key Points
- The BeanFactory is the root interface for accessing a Spring bean container.
- This interface is implemented by objects that hold a number of bean definitions, each uniquely identified by a String name.
- Normally a BeanFactory will load bean definitions stored in a configuration source (such as an XML document), and use the org.springframework.beans package to configure the beans.
Spring BeanFactory Interface Class Diagram
Spring BeanFactory Methods with Examples
package net.javaguides.springboot;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.stereotype.Component;
/**
* Created by Ramesh Fadatare
*/
@SpringBootApplication
public class Application {
public static void main(String[] args) {
BeanFactory beanFactory = SpringApplication.run(Application.class, args);
// Return the bean instance that uniquely matches the given object type, if any.
UserService userService = beanFactory.getBean(UserService.class);
System.out.println(userService.getUserName());
// Determine the type of the bean with the given name.
Class << ? > userService2 = beanFactory.getType("userService");
System.out.println(userService2.getName());
// Does this bean factory contain a bean definition or externally registered
// singleton instance with the given name?
boolean hasBean = beanFactory.containsBean("userService");
System.out.println("containsBean userService :: " + hasBean);
// Is this bean a prototype? That is, will getBean always return independent instances?
boolean isPrototype = beanFactory.isPrototype("userService");
System.out.println(" isPrototype :: " + isPrototype);
// Is this bean a shared singleton? That is, will getBean always return the same instance?
boolean isSingleton = beanFactory.isSingleton("userService");
System.out.println(" isSingleton :: " + isSingleton);
// Return an instance, which may be shared or independent, of the specified bean.
UserService userService3 = (UserService) beanFactory.getBean("userService");
System.out.println(userService3.getUserName());
}
}
@Component
class UserService {
public String getUserName() {
return "Spring Boot";
}
}
Reference
- https://www.javaguides.net/2018/10/spring-beanfactory-interface-example.html
- https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/beans/factory/BeanFactory.html
Comments
Post a Comment
Leave Comment