小编use*_*458的帖子

为什么自动装配不能在线程中运行?

我在Spring 3.0中创建了一个maven项目,我已经制作了一些DAO,服务和控制器,在我的一个控制器中我调用了一个服务,我在其中启动一个线程,问题是在线程中我声明了一个"服务"变量"应该使用自动装配的注释进行初始化,但它不起作用,并且变量未被初始化并且值为null.

这是线程类

package com.project.tasks;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.task.TaskExecutor;
import org.springframework.stereotype.Component;

import com.project.entities.user.User;
import com.project.services.IUserService;

@Component
public class AddFriendInMyFriendListTaskExecutor {
private class AddFriendInMyFriendListTask implements Runnable {


     // HERE IS THE PROBLEM
    @Autowired
    private IUserService uService;

    private User a;
    private User b;

    public AddFriendInMyFriendListTask() {
        ;
    }

    public AddFriendInMyFriendListTask(User aA, User bB) {
        a = aA;
        b = bB;
    }

    public User getA() {
        return a;
    }
    public void setA(User a) {
        this.a = a;
    }
    public User getB() {
        return …
Run Code Online (Sandbox Code Playgroud)

java spring multithreading task autowired

7
推荐指数
2
解决办法
2万
查看次数

标签 统计

autowired ×1

java ×1

multithreading ×1

spring ×1

task ×1