Spring的Bean标签配置(一)

Bean标签基本配置

由于配置对象交由Spring来创建

默认情况下它调用的的是类中的无参构造函数,如果没有无参构造函数则不会创建成功

  • id:唯一标识符号,反射是通过无参构造创建对象的。

  • class:Bean的全限名称

  • scope:指对象的作用范围,取值如下:

  • 主要 singleton 和 prototype

测试singleton范围:

编写接口

public interface UserDao {
    public void  save();
}

具体实现类

public class UserDaoImpl implements UserDao {
    public void save() {
        System.out.println("save running.....");
    }
}

applicationContext.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!-- 不写scope也是singleton -->
    <bean id="UserDao" class="com.my.UserDaoImpl" scope="singleton"/>
    
</beans>

注意bean里面的scope为:singleton

编写测试类:

public class UserDemo {

    @Test
    //测试scope属性
    public  void mytest(){
        ApplicationContext application = new ClassPathXmlApplicationContext("applicationContext.xml");
        UserDao userDao1 = (UserDao) application.getBean("UserDao");
        UserDao userDao2= (UserDao) application.getBean("UserDao");
        System.out.println(userDao1);
        System.out.println(userDao2);
    }
}

注意bean里面的scope为:prototype

总结:

singleton是一个唯一的Bean
prototype是唯一的Bean

posted @ 2021-11-25 17:30  不会笑的孩子  阅读(72)  评论(0编辑  收藏  举报