Spring实例化bean的方法主要有四种:通过构造方法实例化bean,使用静态工厂实例化bean,使用实例工厂实例化bean,使用FactoryBean实例化bean。前三种了解即可,使用FactoryBean实例化bean是重点。
主要是因为,第三种实例化工厂模式的过于麻烦,所以才有了使用FactoryBean实例化Bean这种方法,使用这种方式前,需要先定义这个UserDaoFactoryBean类去实现一个接口就只是FactoryBean<UserdDao>,在这个接口中,可以定义泛型也就是UserDao。然后,需要实现接口中的方法,有两个是必须要实现,一个是选择实现。
getObject这个方法,是确定得到的Bean,然后getObjectType(),是设置Bean的类型,return 这个UserDao.class,返回他的字节码文件。这个isSingleton就是设置是否是单例模式,默认是true,如果设置false,就不是单例模式了。然后再xml中,不要设置在设置那些factory-method ,factory-bean啥的。直接设置id=“” ,class=“‘,可以返回需要得到的bean。
标签:Spring,Bean,bean,实例,设置,FactoryBean From: https://www.cnblogs.com/y-258/p/16951167.html