Significa dizer que eu posso chamar em qualquer parte do meu código o “livroDAO” que automaticamente irá instanciar a classe LivroDAO ? Algo parecido com o código abaixo ?
public class MyApp{
public static void main(args[]){
List<Livro> listaDeLivros = livroDAO.findAll();
}
}
Significa dizer que eu posso chamar em qualquer parte do meu código o “livroDAO” que automaticamente irá instanciar a classe LivroDAO ? Algo parecido com o código abaixo ?
public class MyApp{
public static void main(args[]){
List<Livro> listaDeLivros = livroDAO.findAll();
}
}
Não.
Significa que o container do Spring irá instanciar um objeto de livroDAO e mantê-lo em memória.
Porém, para que você possa utilizar esse objeto precisa dizer ao container do Spring que está solicitando o mesmo.
Se vai fazer um projeto não web, deverá utilizar alguma forma de acesso:
publicclassMessageRunner{finalstaticLoggerlogger=LoggerFactory.getLogger(MessageRunner.class);/** * Main method. */publicstaticvoidmain(String[]args){logger.info("Initializing Spring context.");ApplicationContextapplicationContext=newClassPathXmlApplicationContext("/application-context.xml");logger.info("Spring context initialized.");Messagemessage=(Message)applicationContext.getBean("message");logger.debug("message='"+message.getMessage()+"'");}}
*Retirado daqui
Se for web, você deverá ter configurado o web.xml propriamente e, se for JSF 2, precisará configurar o faces-config.xml para que haja a integração entre os frameworks.