例に従った後、これは JUnit テストで機能します。
@ContextConfiguration(locations = "classpath:/spring/context.xml")
@RunWith(SpringJUnit4ClassRunner.class)
@Transactional
public class ServiceTest {
@Autowired
private Service service;
@Test
public void doSomething() {
assertEquals(0, service.getNumber()); ...
}
これを非テストコードに移動しようとすると、これは機能しません:
// @ContextConfiguration only works for testing (JUnit). What do I use here, instead?
// @ContextConfiguration(locations = "classpath:/spring/helloWorldContext.xml")
@Service // supposedly to get the Spring Container to 'see' this class
public class Accessor {
@Autowired( required=true )
private Service service;
@Autowired
public Accessor() {
return service.getNumber(); ...
}
基本的に、テストクラスを使用するのと同じ方法で非テストクラスを使用したいと考えています。