首先定一個接口:StudentDao
package com.demo.ioce;
public interface StudentDao {
public void say(String something);
}
package com.demo.ioce;
public class StudentImpl implements StudentDao{
@Override
public void say(String something) {
System.out.println("A says "+something);
}
}
再是定一個Spring的配置文件類 AppConfig
package com.demo.ioce;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration
@ComponentScan(basePackages = "com.demo.ioce")
public class AppConfig {
@Bean(name = "StudentDao")
public StudentDao getStudentDao() {
return new StudentImpl();
}
}
最後來一個測試
package com.demo.ioce;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = AppConfig.class)
public class Main {
@Autowired
private StudentDao studentDao;
@Test
public void test() {
studentDao.say("www");
}
}
最後輸出結果:
A says www
該初始化方法可以省去類似於一下過程:
ApplicationContext ctx = new ClassPathXmlApplicationContext("xxx.xml");
BookService bookservice = ctx.getBean(BookService.class);
和xml的配置,使用起來比較方便。
轉載請註明出處:http://blog.csdn.net/goodsave