Java 从另一个类的静态方法调用spring注入类

Java 从另一个类的静态方法调用spring注入类,java,spring,Java,Spring,嗯,我有一个带有@Component Anotion的类,这个类在数据库中进行一些选择,请参见: @Component(value = "parametroRelatorioHelper") public class ParametroRelatorioHelper { @Autowired private BasicDAO dao; public ParametroRelatorio getParametroByNome(String nome) {

嗯,我有一个带有@Component Anotion的类,这个类在数据库中进行一些选择,请参见:

@Component(value = "parametroRelatorioHelper")
public class ParametroRelatorioHelper {

    @Autowired
    private BasicDAO dao;

    public ParametroRelatorio getParametroByNome(String nome) {

        List<ParametroRelatorio> parametros = (List<ParametroRelatorio>) dao
                .findByNamedQuery(ParametroRelatorio.FIND_BY_NOME,
                        new NamedParams("nome", nome));

        if (parametros.size() > 0)
            return parametros.get(0);
        else
            return null;
    }

    public List<ParametroRelatorio> getAll() {

        return (List<ParametroRelatorio>) dao
                .findByNamedQuery(ParametroRelatorio.FIND_ALL);

    }

    public BasicDAO getDao() {
        return dao;
    }

    public void setDao(BasicDAO dao) {
        this.dao = dao;
    }
}

听起来您的体系结构不正确,相反,ReportHelper也应该是一个组件,并且应该在其中注入依赖项,否则它会与Spring IOC的思想相冲突,helper方法不应该依赖于服务上的组件…

您为什么需要这个帮助器?只要在需要的地方注入ParametroRelatorioHelper bean就行了。所以,想想看,我发现唯一的方法就是在我的类中放入@Component注释。我想建立一个业务代理模式并避免它,但我没有时间这么做。
public class ReportHelper {
  public static void call(){
      //how can i do it without @Component injection
      parametroRelatorioHelper.getAll();
   }
}