03.Spring-bean标签的基本配置

112 阅读2分钟

Spring-bean标签的基本配置

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第12天,点击查看活动详情

  • 📝 个人主页:程序员阿红🔥
  • 🎉 支持我:点赞👍收藏⭐️留言📝
  • 🍓欢迎大家关注哦,互相学习🍓
  • 🍋欢迎大家访问哦,互相学习🍋
  • 🍑欢迎大家收藏哦,互相学习🍑

1.bean标签的基本配置

<bean id="" class=""></bean>
* 用于配置对象交由Spring来创建。
* 基本属性:
id:Bean实例在Spring容器中的唯一标识
class:Bean的全限定名
* 默认情况下它调用的是类中的无参构造函数,如果没有无参构造函数则不能创建成功。

2.bean标签范围配置

<bean id="" class="" scope=""></bean>
  • scope属性指对象的作用范围,取值如下:

image-20220301201757498

image-20220301201845967

3.bean生命周期配置

<bean id="" class="" scope="" init-method="" destroy-method=""></bean>
* init-method:指定类中的初始化方法名称
* destroy-method:指定类中销毁方法名称

4.bean实例化的三种方式

  • 无参构造方法实例化
  • 工厂静态方法实例化
  • 工厂普通方法实例化

4.1无参构造方式实例化

它会根据无参构造方法来创建方法来创建类对象,如果bean中没有无参默认的无参构造函数,将会创建失败。

<bean id="userDao" class="com.lagou.dao.impl.UserDaoImpl"/>

4.2工厂静态方法实例化

应用场景:

依赖的jar包中有个A类,A类中有个静态方法m1,m1方法的返回值是一个B对象。如果我们频繁使用B对象,此时我们可以将B对象的创建权交给spring的IOC容器,以后我们在使用B对象时,无需调用A类中的m1方法,直接从IOC容器获得。

public class StaticFactoryBean {
 
  public static UserDao createUserDao(){  
     return new UserDaoImpl();
     }
}
<bean id="userDao" class="com.lagou.factory.StaticFactoryBean" factory-method="createUserDao"/>

4.3工厂普通方法实例化

应用场景

依赖的jar包中有个A类,A类中有个普通方法m1,m1方法的返回值是一个B对象。如果我们频繁使用B对象。 此时我们可以将B对象的创建权交给spring的IOC容器,以后我们在使用B对象时,无需调用A类中的m1方法,直接从IOC容器获得。

public class DynamicFactoryBean { 
    public UserDao createUserDao(){    
        return new UserDaoImpl();
    }
}
<bean id="dynamicFactoryBean" class="com.lagou.factory.DynamicFactoryBean"/>
<bean id="userDao" factory-bean="dynamicFactoryBean" factory-method="createUserDao"/>

🍗🍗🍗 完结撒花

💖💖💖写作不易,如果您觉得写的不错,欢迎给博主点赞、收藏、评论、收藏来一波~让博主更有动力吧

👍👍👍 路漫漫其修远兮,吾将上下而求索