Apple Contection Contect.getBean()がnullの原因です。

857 ワード

1.@Testでは使用できない理由:spring容器解析のため、注釈を有効にするにはspring容器の起動が必要です。これはウェブプロジェクトの起動環境で使われています。junnitでテストして、Spring容器管理beanに自動注入を完成させるには、Springのjunnitテストツールを使って注釈を付けることができます。
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations ={"classpath:spring/spring.xml"})
@Transactional
public class RegionServiceTest extends TestCase {
@Resource(name="regionService")
private RegionService regionService;


@Test
public void testFindRegions() {
    try {
        List regions = regionService.findRegions();
        System.out.println(regions.size());
    } catch (Exception e) {
        e.printStackTrace();
    }
}
2.強転タイプの場合は、実現類ではなくインターフェースとして選択します。Express Serviceはインターフェースです。
Express Service service=(Expresservice)SpringUtil.get Bean;
3.設定ファイルのappication Contact.xmlが注釈をスキャンしているか確認します。