factorybean创建spring bean的类型区分与实现
在spring中,factorybean可以创建和初始化bean,与直接new实例的bean不同。
区分类型:
使用factorybean创建的bean有两种类型:
实现类型区分:
要实现factorybean,可以实现两个接口:
实现代码示例:
代理类型:
public class myfactorybean implements factorybean<a> { @override public a getobject() throws exception { return new b(); } @override public class<?> getobjecttype() { return a.class; } @override public boolean issingleton() { return false; } }
单例类型:
public class MyFactoryBean implements FactoryBean<A>, FactoryBeanAware { private A instance; @Override public void setFactoryBean(FactoryBean<?> factoryBean) { instance = factoryBean.getObject(); } @Override public A getObject() throws Exception { return instance; } @Override public Class<?> getObjectType() { return A.class; } @Override public boolean isSingleton() { return true; } }
以上就是FactoryBean创建Spring Bean的类型区分:代理类型和单例类型有什么区别?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号