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
文章来源: https://blog.51cto.com/u_15707781/5710008
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报