繁体   English   中英

如何调用注入的bean的方法

[英]how to invoke injected bean's method

我有一个关于如何调用Spring框架中注入的bean方法的问题。

注入的类由setter,getter和属性组成。 它将是这样的:

class Mark {
   private String opacity;
   private String alignment;

   public setOpacity(String opacity);
   public getOpacity();
   public setAlignement(String alignement);
   public getAlignement();
}

该类将被注入另一个类,我想从Mark类获取诸如不透明度,对齐方式之类的数据。 但是我不想这样在调用者类中编写类的方法名称:

@Autowired
Mark mark;

void caller() {

    String opacity = mark.getOpacity();

    String alignment = mark.getAlignment(); 
 }

为此,我想到了使用Class.forName(),getDeclaredFields(),getDeclaredMethods()进行反射的方法,但是我很快意识到它适用于普通类,而不适用于注入的类。

所以我的问题是:是否有任何方法可以调用注入的bean的方法或使用反射直接获取数据? 还是有任何想法从注入的bean中获取数据?

首先,您必须在Mark指定方法的返回类型:

public void setOpacity(String opacity);
public String getOpacity();
public void setAlignement(String alignement);
public String getAlignement();

然后,您必须使用@Service注释Mark

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM