spring Ioc案例(1)

对控制反转和依赖注入的讲解

一个班级是由老师和同学组成的,那么班级就依赖于多个老师和同学。spring提供依赖注入的功能,使得我们管理各个对象之间的关系。

班级,同学和老师这3个对象的关系,我们需要一个容器。在spring中把每个对象称为spring bean(简称bean),而spring管理这些bean的容器,称为spring ioc容器

1,通过@bean装配到容器

package com.hengrui.entity.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.hengrui.entity.User;
/**
 * 生成容器装配bean
 * @author Administrator
 *
 */
@Configuration 
public class AppConfig {
	/**
	 * 将对象装配到bean中,起名user,默认是方法名
	 * @return
	 */
	@Bean("user")
	public User initUser() {
		User user = new User();
		user.setId(34);
		user.setName("zhang");
		user.setNote("note_1");
		return user;
	}
}
package com.hengrui.entity;

public class User {
	private Integer id;
	private String name;
	private String note;

	public Integer getId() {
		return id;
	}

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

	public String getName() {
		return name;
	}

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

	public String getNote() {
		return note;
	}

	public void setNote(String note) {
		this.note = note;
	}

	@Override
	public String toString() {
		return "User [id=" + id + ", name=" + name + ", note=" + note + "]";
	}

}
package com.hengrui;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import com.hengrui.entity.User;
import com.hengrui.entity.config.AppConfig;
/**
 * 读取配置文件
 * @author Administrator
 *
 */
public class Application {
	
	private static final Logger log = LoggerFactory.getLogger(Application.class);

	public static void main(String[] args) {
		AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
		User user = context.getBean(User.class);
		log.info(user.getId()+"");
	}
}

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值