Spring装配对象方法-注解

Spring装配对象方法

Spring通过注解为对象装配属性。

@Autowired

@Qualifier

@Resource


beans.xml

xml 复制代码
<beans xmlns="http://www.springframework.org/schema/beans"
       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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
	http://www.springframework.org/schema/beans/spring-beans.xsd
	http://www.springframework.org/schema/context
	http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <context:component-scan base-package="com.hk.eshop"/>

</beans>

UserInfo.java

java 复制代码
package com.hk.eshop;

import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;

@Service
public class UserInfo {
    private String id = null;
    private String name = null;
    private Integer age = null;

    public String getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public String toString()
    {
        return "UserInfo[id="+id+",nam="+name+"]";
    }
}

App.java

java 复制代码
package com.hk.eshop;

import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.ApplicationContext;

/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args )
    {
        ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
        UserInfo ui = (UserInfo)ctx.getBean("userInfo");//Object
        System.out.println( "ui="+ui );

    }
}

@Autowired

OrgInfo.java

java 复制代码
package com.hk.eshop;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.*;

@Service
public class OrgInfo {
    private String name = null;
    @Autowired
    private UserInfo user = null;

    public String getName() {
        return name;
    }

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

    public String toString()
    {
        return "OrgInfo[name="+name+",user="+user+"]";
    }
}


OrgInfo.java

java 复制代码
package com.hk.eshop;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

import java.util.*;

@Service
public class OrgInfo {
    private String name = null;
    @Autowired @Qualifier("userInfo")
    private UserInfo user = null;

    public String getName() {
        return name;
    }

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

    public String toString()
    {
        return "OrgInfo[name="+name+",user="+user+"]";
    }
}




相关推荐
IT_陈寒17 分钟前
React状态更新总是不及时?你可能漏了这步批处理机制
前端·人工智能·后端
Jinkey1 小时前
要用户手机号真的是为了打骚扰电话吗?浅谈微信生态会员账号体系与资产合并
后端·微信·微信小程序
葫芦和十三1 小时前
图解 MongoDB 06|模式演进:无 schema 是优势还是债
后端·mongodb·agent
葫芦和十三9 小时前
图解 MongoDB 05|文档模型设计:内嵌 vs 引用,反范式不是免费午餐
后端·mongodb·agent
不能放弃治疗12 小时前
单 Agent 实现模式
后端
IT_陈寒14 小时前
Redis内存爆了,原来我漏掉了这个致命配置
前端·人工智能·后端
小bo波15 小时前
从"任意文件复制"深挖Java I/O:字符流与字节流的本质抉择
java·nio·io流·后端开发·文件复制
fliter15 小时前
最后一块拼图:用 bitvec 构造 IPv4 包,真正做出自己的 Ping
后端
fliter16 小时前
用 Rust 解析并生成 ICMP 包:checksum、nom 与 cookie-factory
后端
蝎子莱莱爱打怪16 小时前
XZLL-IM干货系列 03|消息 ID 设计:一个 UUID 搞不定的事,我用两个 ID 解决了
后端·面试·开源