返回

Spring依赖注入

发布时间:2022-11-26 20:36:17 301
# html# webkit# spring# 技术
/*
*作者:呆萌老师
*☑csdn认证讲师
*☑51cto高级讲师
*☑腾讯课堂认证讲师
*☑网易云课堂认证讲师
*☑华为开发者学堂认证讲师
*☑爱奇艺千人名师计划成员
*在这里给大家分享技术、知识和生活
*各种干货,记得关注哦!
*/

1.通过标签property注入
property标签

测试代码:

public class Drink {

private String name;

private String sugar;

private float price;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getSugar() {
return sugar;
}

public void setSugar(String sugar) {
this.sugar = sugar;
}

public float getPrice() {
return price;
}

public void setPrice(float price) {
this.price = price;
}

public Drink() {
System.out.println("创建一杯饮料");
}
}
<bean id="drink_01" class="com.test.pojo.Drink" >
<property name="name" value="西瓜汁" />
<property name="price" value="18" />
<property name="sugar" value="半糖" />
</bean>

2.通过构造函数注入
constructor-arg 标签

属性: name:构造函数的参数名

value:传进去的值

ref:参数依赖的对象

index:参数类型和参数个数都相同,但顺序不同的时候,可以用index来设置顺序 从0开始

type: 参数个数相同,参数名也相同,但类型不同 ,可以用type来设置类型

测试代码:

Drink类中添加构造函数:

package com.test.pojo;

public class Drink {

private String name;

private String sugar;

private float price;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getSugar() {
return sugar;
}

public void setSugar(String sugar) {
this.sugar = sugar;
}

public float getPrice() {
return price;
}

public void setPrice(float price) {
this.price = price;
}

public Drink() {
System.out.println("创建一杯饮料");
}

public Drink(String name) {
this.name = name;
}

public Drink(String name, String sugar) {
this.name = name;
this.sugar = sugar;
}

public Drink(String name, float sugar) {
this.name = name;
this.price = sugar;
}

public Drink(float sugar,String name) {
this.name = name;
this.price = sugar;
}

@Override
public String toString() {
return "Drink{" +
"name='" + name + '\'' +
", sugar='" + sugar + '\'' +
", price=" + price +
'}';
}

}
配置文件中调用不同构造函数测试:

<!--
构造函数的参数个数相同 参数类型也相同 但顺序不同 需要用index来指定参数的顺序
index 指的是参数的顺序

-->
<!-- 如果构造函数的参数个数相同 参数类型不同 则需要指定参数类型
基本类型 直接用基本类型
-->

<bean id="drink_02" class="com.test.pojo.Drink" >
<constructor-arg name="name" value="奶茶" />
</bean>

<bean id="drink_03" class="com.test.pojo.Drink" >
<constructor-arg name="name" value="珍珠奶茶" index="0" />
<constructor-arg name="sugar" value="13" type="float" index="1" />
</bean>

3.p空间注入
1)引入p空间

xmlns:p=“http://www.springframework.org/schema/p”

       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:p="http://www.springframework.org/schema/p" //加在xmlns属性中
xsi:schemaLocation="http://www.springframework.org/schema/beans

2)使用

p:属性名=属性值

      p:price="28"  p:sugar="半糖"  />

更多关注

​​https://edu.51cto.com/lecturer/14175030.html​​

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线