一、首先,需要xml中进行少量的配置来启动Java配置:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://ponent-scan></beans>二、定义一个配置类
用@Configuration注解该类,等价 与XML中配置beans;用@Bean标注方法等价于XML中配置bean。
代码如下:
package SpringStudy;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import SpringStudy.Model.Counter;import SpringStudy.Model.Piano;@Configurationpublic class SpringConfig {@Beanpublic Piano piano(){return new Piano();}@Bean(name = "counter") public Counter counter(){return new Counter(12,"Shake it Off",piano());}}三、基础类代码
Counter:
package SpringStudy.Model;public class Counter {public Counter() {}public Counter(double multiplier, String song,Instrument instrument) {this.multiplier = multiplier;this.song = song;this.instrument=instrument;}private double multiplier;private String song;@Resourceprivate Instrument instrument;public double getMultiplier() {return multiplier;}public void setMultiplier(double multiplier) {this.multiplier = multiplier;}public String getSong() {return song;}public void setSong(String song) {this.song = song;}public Instrument getInstrument() {return instrument;}public void setInstrument(Instrument instrument) {this.instrument = instrument;}}Piano类
package SpringStudy.Model;public class Piano {private String name="Piano";private String sound;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSound() {return sound;}public void setSound(String sound) {this.sound = sound;}}四、调用测试类
注意:如果是在xml中配置beans和bean的话,或者使用自动扫描调用的话,代码为
ApplicationContext ctx = new ClassPathXmlApplicationContext("spring/bean.xml");// 读取bean.xml中的内容Counter c = ctx.getBean("counter", Counter.class);// 创建bean的引用对象五、运行结果
12.0falseShake it OffPiano---------------------以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。