SpringBean的配置详解 ---下

本文详细介绍了Spring框架中的Bean依赖注入机制,包括不同数据类型的注入以及默认标签和自定义标签的使用,如`<bean>`、`<beans>`、`<import>`、`<alias>`等,以及如何通过`<profile>`实现环境切换。
摘要由CSDN通过智能技术生成

目录

Bean的依赖注入

其它配置标签


Bean的依赖注入

 其中,ref是reference的缩写形式,翻译为:涉及,参考的意思,用于引用其它Bean的id。value用于注入普通属性值

 

依赖注入的数据类型有三种:

  • 普通数据类型,例如String,int,boolean等,通过value属性指定

  • 引用数据类型,例如UserDaoImpl,DataSource等,通过ref属性指定

  • 集合数据类型,例如 List,Map,Properties等

  1. 其它配置标签
  2. Spring的xml标签大体上分为两类,一种是默认标签,一种是自定义标签

 默认标签:就是不用额外导入其他命名空间约束的标签,例如<bean> 标签

 

 <beans>标签除了经常用作为根标签外,还可以嵌套再根标签内使用profile属性切换开发环境

    <beans profile="dev">
        <bean id="userService1" class="com.xfy.service.impl.UserServiceImpl"></bean>
    </beans>
    <beans profile="test">
        <bean class="com.xfy.dao.Impl.UserDaoImpl" id="userDao"></bean>
    </beans>

public class ApplicationContextTest {
    public static void main(String[] args) {
        System.setProperty("spring.profiles.active","test");
        ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("ApplicationContext.xml");
        // 指定被激活的环境
        /**
         * 虚拟机参数位置加载  -Dspring.profiles.active=test
         * 代码方式:System.setProperty("spring.profiles.active","test")
         */
//        UserService service = (UserService)applicationContext.getBean("userService1");
        UserDao userDao1 = (UserDao) applicationContext.getBean("userDao1");
//        System.out.println(service);
        System.out.println(userDao1);
    }

}

<import>标签,用于导入其他配置文件,项目变大后,就会导致文件内容过多,可以将一个配置文件根据业务某块进行拆分,拆分后,最终通过<import>标签导入到一个主配置文件中,项目加载主配置文件就连同<import>导入的文件一并加载

<?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">
    <import resource="Beans.xml"></import>

<alias>标签是为某个Bean减价别名

  1. 自定义标签:就是需要额外引入其他命名空间约束。并通过前缀引用的标签例如context:property-placeholder/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值