簡體   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