Veremos que a resolução dos argumentos do Construtor é feita de acordo com o tipo do argumento. Por exemplo na nossa classe Quadrado o construtor é
public Quadrado(Point p, int lado)
os argumentos são Point p e int lado. Como os dois tipos são diferentes, é fácil para o Spring saber qual é o ponto p e qual é o lado (inteiro).
Se existir qualquer ambiguidade nos argumentos do construtor, a ordem em que os argumentos são definidos no construtor é considera de acordo com a ordem pela qual estes argumentos são fornecidos no arquivo de configuração. Por exemplo, para a classe java.awt.Point o construtor é
Point(int x, int y)
os dois argumentos são inteiros, portanto o Spring utiliza a ordem para definir os argumentos. Assim no arquivo de configuração
<bean class="java.awt.Point">
<constructor-arg value="250" />
<constructor-arg value="100" />
</bean>
o primeiro argumento x é atribuído o valor 250 e segundo argumento y é atribuído o valor 100.
Se invertermos as duas linhas
<bean class="java.awt.Point">
<constructor-arg value="100" />
<constructor-arg value="250" />
</bean>
o primeiro argumento x é atribuído o valor 100 e segundo argumento y é atribuído o valor 250.
Vamos ver neste post 2 vídeos:
a) Tags para criação do bean
b) Exemplo de utilização