您的位置:首页 > 编程语言 > Java开发

Java - Spring IoC容器配置Bean的方式?

2017-11-10 09:52 811 查看
- 基于XML文件进行配置。 
- 基于注解进行配置。 
- 基于Java程序进行配置(Spring 3+)
package com.jackfrued.bean;

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

@Component
public class Person {
private String name;
private int age;
@Autowired
private Car car;

public Person(String name, int age) {
this.name = name;
this.age = age;
}

public void setCar(Car car) {
this.car = car;
}

@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + ", car=" + car + "]";
}

}
package com.jackfrued.bean;

import org.springframework.stereotype.Component;

@Component
public class Car {
private String brand;
private int maxSpeed;

public Car(String brand, int maxSpeed) {
this.brand = brand;
this.maxSpeed = maxSpeed;
}

@Override
public String toString() {
return "Car [brand=" + brand + ", maxSpeed=" + maxSpeed + "]";
}

}
package com.jackfrued.config;

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

import com.jackfrued.bean.Car;
import com.jackfrued.bean.Person;

@Configuration
public class AppConfig {

@Bean
public Car car() {
return new Car("Benz", 320);
}

@Bean
public Person person() {
return new Person("X-Man", 34);
}

}
package com.jackfrued.test;

import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import com.jackfrued.bean.Person;
import com.jackfrued.config.AppConfig;

class Test {

public static void main(String[] args) {
// TWR (Java 7+)
try(ConfigurableApplicationContext factory = new AnnotationConfigApplicationContext(AppConfig.class)) {
Person person = factory.getBean(Person.class);
System.out.println(person);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java Spring IoC Bean