多线程Spring注入失败

    在对Spring进行测试(多线程环境)时发现ExpertBlogService一直注入失败,后来发现多线程环境下Spring是不会对新线程进行管理的,所以需要我们手动加载配置文件,另外将加载部分部分放进静态块中防止多次加载,代码如下:

    private static ApplicationContext ctx = null;

    private static ExpertBlogService expertBlogService;

    private static ExpertBlogMapper expertBlogMapper;

    //When you use @Autowired in a new thread,you will get a nullpointerException
    static {
        ctx = new ClassPathXmlApplicationContext("classpath:spring/applicationContext.xml");
        expertBlogMapper = (ExpertBlogMapper) ctx.getBean("expertBlogMapper");
        expertBlogService = new ExpertBlogServiceImpl(expertBlogMapper);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值