0
我试图测试Spring依赖注入功能,但在尝试使用Spring Bean类的getter方法检索实例变量的值时遇到问题。获取先前设置的实例变量的空值。Getter方法在Spring中重新调用空值DI
我的主类
public class Main {
public static void main(String ... args) {
ApplicationContext context = new ClassPathXmlApplicationContext("BeanFactory.xml");
IBackup dataWriterObj = (IBackup) context.getBean("writeBackupHDFS");
backup backup = new backup();
backup.setNickName("Abbey");
String result = dataWriterObj.read("Ankur", "Bahre");
System.out.println(result);
}
}
Bean类
public class backup implements IBackup {
private String nickName;
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public String read(String firstName, String lastName) {
String Name = "My Name is " + firstName + " " + lastName + " and my nickName is " + getNickName();
return Name;
}
}
接口
public interface IBackup {
public String read(String firstName, String lastName);
}
BeanFactory.xml
<bean id="writeBackupHDFS" class="test.backup"/>
预期输出 - My Name is Ankur Bahre and my nickName is Abbey
实际输出 - My Name is Ankur Bahre and my nickName is null
任何人都可以表明它是什么,我的思念?
感谢
更新主方法我不能这样做,作为dataWriterObj只能用于在接口中定义的方法。我不想在界面中添加setter和getter方法。 –
@AnkurBahre我已经用DI实现更新了答案。请检查一次 – Sam
上述解决方案奏效。谢谢一吨 –