有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何调用注入bean的方法

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

注入的类由setter、getter和properties组成。它希望这样:

class Mark {
   private String opacity;
   private String alignment;

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

这个类将被注入到另一个类中,我想从类标记中获取不透明度、对齐度等数据。但是,我不想在调用方类中这样写类的方法名:

@Autowired
Mark mark;

void caller() {

    String opacity = mark.getOpacity();

    String alignment = mark.getAlignment(); 
 }

为此,我考虑了使用类进行反射。forName()、getDeclaredFields()、getDeclaredMethods(),但我很快意识到它适用于普通类,而不是注入类

所以我的问题是: 有没有办法调用注入bean的方法或直接使用反射获取数据?或者从注入的bean中获取数据


共 (1) 个答案

  1. # 1 楼答案

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

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

    然后,必须用@Service注释Mark