setter方法注入(Java EE 学习笔记07)

属性setter方法注入是Spring最主流的注入方法,这种注入方法简单、直观,它是在被注入的类中声明一个setter方法,通过setter方法的参数注入对应的值。

案例:

① 创建User2实体,配置setter方法
java 复制代码
package com.lq.entities;

/**
 * @Author: Luqing Teacher
 * @CreateTime: 2024-11-27
 * @Description: 用户2
 * @Version: 1.0
 */


public class User2 {
    private int id;
    private String name;
    private String pwd;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    @Override
    public String toString() {
        return "User2{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", pwd='" + pwd + '\'' +
                '}';
    }
}
② 创建applicationContext-user2.xml
XML 复制代码
<?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">
    <bean id="user2" class="com.lq.entities.User2">
        <property name="id" value="2"></property>
        <property name="name" value="lq2"></property>
        <property name="pwd" value="456"></property>

    </bean>

</beans>
③ 测试类
java 复制代码
package com.lq.test;

import com.lq.entities.User2;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * @Author: Luqing Teacher
 * @CreateTime: 2024-11-27
 * @Description: 测试2
 * @Version: 1.0
 */


public class TestUser2 {
    public static void main(String[] args)
    {
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext-user2.xml");
        User2 user2 = applicationContext.getBean("user2", User2.class);
        System.out.println(user2);
    }
}
④ 结果如下:
相关推荐
摇滚侠30 分钟前
《RocketMQ 官网》阅读笔记 RocketMQ 订阅 (Subscription)
笔记·rocketmq
huahailing10241 小时前
Spring Boot 集成 XXL-Job 完整实现方案(支持动态CRUD)
java·spring boot·后端
m4Rk_1 小时前
【论文阅读】Agent 记忆机制(22):FluxMem——根据对话结构动态选择记忆组织方式
论文阅读·人工智能·学习
薛定谔的猫-菜鸟程序员1 小时前
基于 Electron 的本地短视频解析与下载工具:架构设计与工程实践
java·electron·音视频
风曦Kisaki2 小时前
Kubernetes(K8s)笔记Day03: Pod命名空间,标签,Pod 的调度,污点与容忍度,Pod 常见状态和重启策略,Pod 生命周期
linux·运维·笔记·docker·云原生·容器·kubernetes
六bring个六2 小时前
git使用笔记
笔记·git
砚凝霜2 小时前
软考网络工程师|第 3 章 以太网帧、物理层标准、VLAN 完整备考笔记
网络·笔记
hanlin032 小时前
刷题笔记:力扣第704、977、209题(数组相关)
笔记·算法·leetcode
天国梦2 小时前
英语词汇学习软件深度测评:天学网等三款APP实测对比与选型指南
学习
菜鸟‍2 小时前
【论文学习】Frontiers in Physics 2024 || Cap2Seg:基于文本描述生成的 COVID-19 医学图像分割性能提升方法
人工智能·学习