Monthly Archives: September 2010

Conexiones de Based de Datos Multiples con Spring 3

Published / by Renan Huanca / 7 Comments on Conexiones de Based de Datos Multiples con Spring 3

Hola amigos, disculpen por el tiempo que no postee, en mi trabajo me tenían muy ocupado.

Preliminar

Mostrare como se configura Spring para poder conectarse a múltiples bases de datos usando Spring 3.

Archivo de contexto de Spring

Primeramente definimos las conexiones disponibles en el archivo de contexto de Spring.



    
    
    ...
    
	
        
        
        
        
    

	
    
        
        
        
        
    
    ...

Dao para acceder al datasource de projectos.

Básicamente utilizaremos el patrón de interfase, implementación e inversión de control.

package edu.renan.samples;

import javax.sql.DataSource;
/**
 * To manage projects in our company.
 */
public interface ProjectsDao {

    /**
     * Sets a notes data source for this dao.
     * @param projectDataSource
     */
    public void setProjectsDataSource(DataSource projectDataSource);

    /**
     * list all projects...(je je this is just an example)
     */
    public Collection listAllProjects();
}
package edu.renan.samples;

import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import javax.sql.DataSource;
import java.util.Date;

@Component("projectsDao")
public class ProjectsDaoImpl implements ProjectsDao {

    private JdbcTemplate jdbcTemplate;

    @Autowired
    public void setProjectsDataSource(@Qualifier("projectsDataSource") DataSource projectsDataSource) {
        this.jdbcTemplate = new JdbcTemplate(projectsDataSource);
    }
	
    public Collection listAllProjects(){
        return this.jdbcTemplate.query( "select * from projects", new ProjectMapper());
    }
}

Tengo que resaltar que aqui estoy utilizando la anotación @Qualifier. Esta anotación nos permite explícitamente indicar que DataSource utilizar. y Listo!!!.

Bueno amigos eso seria todo por hoy, abajo pueden encontrar algunos links a recursos.

Recursos