上课笔记(第三讲)

二、依赖注入的实现方法

(一)使用set方法

1.什么是构造器:构造器是一个函数,名字和类名相同,创建对象系统调用,用于初始化对象的各种属性值。如果一个类没有构造器系统默认一个无参构造器。

无参构造器给属性赋值为下列情况:"",int 0,booleanflase

2.无参构造器

public void User(){}

第一步:创建普通类使用无参构造器初始化对象

第二步:在bean工厂中装配对象,使用无参构造器初始化对象

<?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-4.3.xsd">
<!--
这是bean工厂的装配容器
这里只负责装配,不负责实现


-->
    <bean id="userDao" class="LDZ.com.DAO.DaoImpl"/>

    <bean id="userService" class="LDZ.com.Services.UserServiceImpl">
        <property name="userDao" ref="userDao"/>
    </bean>
    <bean id="User" class="LDZ.com.pojo.User">
        <constructor-arg index="0" value="123"/>
        <constructor-arg index="1" value="ldd"/>
        <constructor-arg index="2" value="123"/>

    </bean>
</beans>

第三步:测试数据

 @Test
    public void one(){

        //1.创建bean工厂,名称是contest,也叫做上下文对象,
        //并且同事创建容器中装配好的bean(对象),这些对象一旦创建就永久存在
        //工厂生命周期结束,对象的生命才结束
        ApplicationContext context =
                new ClassPathXmlApplicationContext("bean.xml");
    //2.从bean工厂中获取bean
        UserServices userService = context.getBean("userService",UserServices.class);

userService.addUser();
userService.delUser();
userService.findUser(111);
userService.updateUser();
    }

3.有参构造器注入值

3.1有参构造器的样式

 public User(int id, String name, String pwd) {
        this.id = id;
        this.name = name;
        this.pwd = pwd;
    }

第一步:创建普通类,使用有参构造器初始化对象
package LDZ.com.pojo;

public class User {
    private int id;
    private String name;
    private String pwd;
public void User(){


}

    public User(int id, String name, String pwd) {
        this.id = id;
        this.name = name;
        this.pwd = pwd;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", pwd='" + pwd + '\'' +
                '}';
    }
}

结果如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yu5nA9pm-1632886160378)(F:/picture/02.png)]

3.属性值注入法

条件:

1.属性注入法也称setXXX注入法

2.为各种属性提供set注入方法

第一步:创建普通类,使用属性注入法

第二步:在bean工厂的容器中,创建对象,使用有参构造器初始化属性值,属性值为容器中装配的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值