Pessoal fui fazer esse exemplo c Spring e não consigo rodar o mesmo…
Estou c as blib ok (commons-logging; log4j; spring e spring-aspects)
A estrutura do meu projeto está assim:
SRC
beans
Cliente.java
Sistema.java
SistemaImpl.java
dao
ClienteDao.java
ClienteHibernateDao.java
main
Aplicacao.java
Onde beans, dao e main são os pacotes q criei…
Lá vão os meus códigos;
Cliente.java:
package beans;
public class Cliente {
private int id;
private String nome;
public int getId(){
return id;
}
public void setId(int id){
this.id = id;
}
public String getNome(){
return nome;
}
public void setNome(String nome){
this.nome = nome;
}
}
Sistema.java
package beans;
import java.util.*;
public interface Sistema {
public Collection getClientes();
public void incluirCliente(Cliente cliente);
}
SistemaImpl.java
package beans;
import java.util.*;
import dao.ClienteDao;
public class SistemaImpl implements Sistema{
private ClienteDao clienteDao;
public Collection getClientes(){
return clienteDao.getClientes();
}
public void incluirCliente(Cliente cliente){
clienteDao.incluirCliente(cliente);
}
public ClienteDao getDaoCliente(){
return clienteDao;
}
public void setDaoCliente(ClienteDao clienteDao){
this.clienteDao = clienteDao;
}
}
ClienteDao.java
package dao;
import java.util.*;
import beans.Cliente;
public interface ClienteDao {
public Collection getClientes();
public void incluirCliente(Cliente cliente);
}
ClienteHibernateDao.java
package dao;
import java.util.*;
import beans.Cliente;
public class ClienteHibernateDao implements ClienteDao{
public Collection getClientes(){
System.out.println("Listagem");
Collection list = new ArrayList();
Cliente c1 = new Cliente();
Cliente c2 = new Cliente();
Cliente c3 = new Cliente();
list.add(c1);
list.add(c2);
list.add(c3);
return list;
}
public void incluirCliente(Cliente cliente){
System.out.println("Cliente Incuído.");
}
}
O arq XML de configuração do Spring:
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="Sistema" class="beans.SistemaImpl">
<property name="clienteDao" ref="ClienteDao"></property>
</bean>
<bean id="ClienteDao" class="dao.ClienteHibernateDao">
</bean>
</beans>
E finalmente a aplicação em si c o Main:
Aplicacao.java
package main;
import org.springframework.beans.factory.xml.*;
import org.springframework.core.io.*;
import beans.Sistema;
import beans.Cliente;
public class Aplicacao {
public static void main ( String[] args ) {
XmlBeanFactory factory = new XmlBeanFactory(new FileSystemResource("applicationContext.xml"));
Sistema sistema = (Sistema)factory.getBean("Sistema");
sistema.incluirCliente ( new Cliente() ) ;
}
}