Dúvida Spring - Injeção de Dependência

6 respostas
R

Ao criar uma classe de DAO, para chamá-la em outro DAO eu faço assim:

//exemplo

MeuDAO dao = new MeuDAO(); dao.pesquisa();

Se estou uma classe que esteja anotada com @Service do Spring, como faço para chama-lá em outra parte do código?

6 Respostas

zoren

usa o @Autowired

@Autowired
private DAO dao;
R

Mas fazendo assim como você comentou ao tentar acessar algum método desse DAO, diz que ele ( o dao ) está nulo :S

zoren

Vc tem mapeamento desse DAO na configuração do Spring??

R

Isso que ia perguntar se esse @Autowired precisa ficar dentro de um @Service?

Porque dentro das classes de negócios que são serviços o @Autowired está ok, porém em outras classes que não estão anotadas e nem mapeadas em lugar nenhum não funciona.

Posso mapear essas classes ou tenho que declarar no XML?

zoren

Sim, o @Autowired tem que partir de um @Service

zoren

Na configuração vc tem que usar o component-scan

Criado 7 de março de 2010
Ultima resposta 9 de mar. de 2010
Respostas 6
Participantes 2