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+"]";
    }
}




相关推荐
脚本自动化开发12 小时前
折叠双屏MU156LA:写稿修图游戏体验
后端
脚本自动化开发12 小时前
AI短剧800集讲规矩,观众忘了是AI
后端
Csvn14 小时前
安装、升级与目录结构
后端·nginx
皮皮林55115 小时前
万能通用!权限系统就该这么设计
后端
2601_9621066415 小时前
【Java Set综合实战】商品管理系统 + 图书收藏系统|Product、Book自定义类全套代码
java
RuoyiOffice16 小时前
SpringBoot+Vue3 凭证生命周期设计:审核、过账、冲销与反过账怎样保持账目一致
java·spring boot·事务·springboot3·财务系统·会计凭证·ruoyi office
GoAI16 小时前
DeepSeek Harness Memory (一)主流记忆插件总结
后端·算法·面试
2601_9621066416 小时前
HashMap入门|工号-姓名键值存储、两种遍历方式、根据key/value查
java
橙子家17 小时前
RESTful 接口:它并非标准或协议,而是一种【架构风格】
后端
杨凯凡17 小时前
Spring Framework 7 API 版本管理实战:请求头路由、兼容迁移与废弃策略
java·rest api·springframework·spring boot 4·api版本管理