Я хочу использовать @inject для вставки компонента, который имеет параметризованный конструктор. При инъекции мне нужно передать параметр в bean-компонент. Чтобы четко объяснить.java injection - как ввести компонент с параметризованным конструктором
класс А:
public class A{
private String name;
private String id;
private int age;
public A(Student student){
name = student.getName();
id = student.getId();
age = student.getAge();
}
public String getName(){
return Name;
}
..
..
}
класса B, где бобы класса А должен быть введен:
public class B{
@inject private Student student;
//how to inject the below passing student value
@inject private A a; // new A(student);
public getNameAndAge(){
String name = a.getName();
int age = a.getAge();
System.out.println(name);
}
public sendDetails(){
sendInWebService(a);
}
..
..
}
В классе В, компонент А должен быть использован локально во многих методах. Надеюсь, что этот фрагмент кода поможет понять мою проблему. Я новичок в инъекции зависимостей Spring и Java. У нашего приложения нет зависимости от Spring, и поэтому @inject - единственный способ сделать это.
Заранее спасибо.
Ваш A кажется доменом POJO, не будет никакой пользы для создания объекта, управляемого Spring. Почему бы не создать экземпляр через 'new'? – kryger