[SPRING] 프로그래밍 방식으로 스프링 빈에 값 전달하기?
SPRING프로그래밍 방식으로 스프링 빈에 값 전달하기?
나는 봄 콩 밑에있다.
public class Employee2 {
private int id;
private String name;
private double salary;
public Employee2(int id, String name, double salary) {
this.id = id;
this.name = name;
this.salary = salary;
}
// some logic to call database using above values
}
이제 봄 구성 파일에 다음과 같은 설정이 있습니다.
<bean id="emp2" class="com.basic.Employee2">
<constructor-arg name="id" value="" />
<constructor-arg name="name" value="" />
<constructor-arg name="salary" value="" />
</bean>
이제 나는 동적이기 때문에 위의 설정에서 값을 하드 코딩 할 수 없습니다.
이제 나는 아래 코드를 사용하여 프로그램 적으로 스프링 빈을 얻고있다.
Employee2 emp = (Employee2)applicationContext.getBean("emp2");
이제 어떻게 Employee2 생성자에 값을 전달할 수 있습니까?
감사!
해결법
-
==============================
1.빈 조회를 할 때. 대신 varargs getBean 메소드를 사용하여 생성자에 인수를 보내십시오.
빈 조회를 할 때. 대신 varargs getBean 메소드를 사용하여 생성자에 인수를 보내십시오.
그래서 다음과 같이 시도해보십시오 :
Employee2 emp = (Employee2)applicationContext.getBean("emp2", "someid", "somename", "somesalaray");
from https://stackoverflow.com/questions/21826639/passing-values-to-spring-bean-programmatically by cc-by-sa and MIT license