Spring的依赖注入

Spring依赖注入的简单实现

创建一个User类

package entity;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class User {
    private String name;
    private int age;
    private String[] names;
    private List list;
    private Set set;
    private Map map;
    private Dept dept;
    public User() {
        System.out.println("user无参的构造方法");
    }

    public User(String name, int age,Dept dept) {
        System.out.println("有参的User构造");
        this.name = name;
        this.age = age;
        this.dept=dept;
    }

    public void show() {
        System.out.println("你好!");
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String[] getNames() {
        return names;
    }
    public void setNames(String[] names) {
        this.names = names;
    }
    public List getList() {
        return list;
    }
    public void setList(List list) {
        this.list = list;
    }
    public Set getSet() {
        return set;
    }
    public void setSet(Set set) {
        this.set = set;
    }
    public Map getMap() {
        return map;
    }
    public void setMap(Map map) {
        this.map = map;
    }
    public Dept getDept() {
        return dept;
    }
    public void setDept(Dept dept) {
        this.dept = dept;
    }

创建一个测试类Test

package test;

import java.util.Iterator;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import entity.User;

public class Test {
    public static void main(String[] args) {
        /*对象被spring管理以后就不能真么直接new出来
         * User u=new User();
        u.show();*/
        //创建spring的工厂(BeanFactory)
        BeanFactory bf = new ClassPathXmlApplicationContext("MySpring.xml");
        //根据工厂类创建指定的对象,传进去的是<bean>的id属性
        User u =(User)bf.getBean("user");
        //User u=(User)bf.getBean(User.class);
        //User u=(User)bf.getBean("user",User.class);
        //u.show();
    /*  u.setName("李四");
        System.out.println(u.getName());
        User u2 =(User)bf.getBean("user");
        System.out.println(u2.getName());
        */
        System.out.println(u.getNames()[0]);
        System.out.println(u.getList().get(0));
        //set取值
        Iterator its=u.getSet().iterator();
        while(its.hasNext()){
            System.out.println(its.next());
        }
        //map的取值
        System.out.println(u.getMap().get("aa"));
        //对象属性
        System.out.println(u.getDept().getdName());
        //有参的构造
        User u3=(User)bf.getBean("user2");
        System.out.println(u3.getName());
    }
}   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值