spring属性的配置注入和注解注入

spring属性的配置注入

三种简单属性的配置注入

1、se方式注入
一个User对象,想通过set方法注入,那么在User中我们首先要提供set方法
一个user对象
然后在Spring配置文件中做如下配置:

关于user类的配置文件
代码测试:
ApplicationContext context = new ClassPathXmlApplicationContext("");
通过上下文获取管理bean的实例

测试配置是否起作用
测试结果: 张三

2、构造方法注入
有一个User1,User1中有一个变量叫做username,我希望通过构造方法给它注入值,那么在User1中提供相应的构造方法即可
有构造方法的user1
然后在Spring配置文件中做如下配置:
这里配置的是constructor不再是property
配置
代码测试:
测试构造注入
测试结果:李四

3、p名称空间注入
有一个User2对象,User2中有一个username属性,我为该属性提供了set方法,我们来看看如何在配置文件中通过p名称空间进行注入

然后在Spring配置文件中做如下配置:
p名称空间注入需要在配置文件中添加p名称空间约束:
xmlns:p=“http://www.springframework.org/schema/p”

在这里插入图片描述
代码测试:
在这里插入图片描述
测试结果:王五

几种复杂属性的配置注入

1、对象的注入
这算是开发中最最常用的注入了。举一个常见的使用场景,我们在Dao层进行数据库的操作,在Service层进行业务逻辑操作,那我在Service中需要有一个Dao实例,UserService 中提供set方法,通过set方法进行注入:
Dao层:
在这里插入图片描述
Service层:
在这里插入图片描述
在这里插入图片描述
配置文件
将userDao注入到你的userService,就是说,你的UserService将要调用你的id为userDao所指向的class
< property name=“userDaoImpl” ref=“userDao” />
相当于
class UserService{
UserDAO userDAO = new UserDAOImpl();
}

在这里插入图片描述
代码测试:
在这里插入图片描述
测试结果:获取数据了

2、 数组注入&List集合注入&Map注入&Properties注入
有一个User3
在这里插入图片描述
配置文件:
在这里插入图片描述
测试代码:
在这里插入图片描述
测试结果:
张三、李四、王五
足球、篮球、乒乓球
key:username;value:张三,key:password;value:123,
赵六

spring属性的注解注入

1、简单属性值的注解注入

@Service // 需要被注入属性值的类需要被Spring管理
// 利用@Value注解,即使没有该属性或者属性文件也不会报错
// @Value输入属性值name,默认值xydefault

在这里插入图片描述
配置:
#src/main/resource新建文件info.properties
name=xy1
num=101
type=1

在这里插入图片描述

2、利用标签注入复杂属性

配置:
#src/main/resource新建文件info2.properties
name=xy2
num=102
type=2

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值