微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring工厂Bean FactoryBean

首先什么是bean,我感觉我看了这么久,一直没太明白,这里听老师说,bean就是对象。

在Spring中有两种类型的bean,一种是普通bean,另一种是工厂bean(factorybean

普通bean和factorybean的区别:

普通bean,在配置文件中定义bean类型就是返回类型。

工厂bean,在配置文件中定义的bean类型可以和返回的类型不一样。

演示工厂bean:

  1. 创建类,让这个类作为工厂bean,实现接口factorybean
  2. 实现接口里面的方法,在实现的方法中定义返回的bean类型
<!--Mybean.xml-->
<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:p="http://www.springframework.org/schema/p"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    
    <!--定义bean-->
    <bean id="myBean" class="com.finajoy.Spring5.factorybean.MyBean"/>
</beans>
//MyBean.java
public class MyBean implements factorybean<String> {

    //实现这个方法,定义返回的bean
    @Override
    public String getobject() throws Exception {
        return "null";
    }

    @Override
    public Class<?> getobjectType() {
        return null;
    }

    public static void main(String[] args) {
        ClasspathXmlApplicationContext context = new ClasspathXmlApplicationContext("MyBean.xml");
        String myBean = context.getBean("myBean", String.class);
        System.out.println(myBean);
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐