Tema: Spring
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/01/2008, 11:12
Avatar de fatherjuan
fatherjuan
 
Fecha de Ingreso: mayo-2005
Ubicación: Estado de México
Mensajes: 132
Antigüedad: 19 años
Puntos: 0
Re: Spring

Hola, mira no se si te sirva de mucho, pero yo lo hago así:

Creo un xml llamdo ApplicationContext.xml

Código PHP:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans  PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <!-- ===============================  Bean Factory ========================================= -->    
        <bean id="beanBO" class="ruta.de.la.clase.BeanBO" singleton="true">
        <property name="beanDAO">
        <ref local="beanDAO"/>
        </property>
        </bean>
    
       <bean id="beanDAO" class="ruta.de.la.clase.BeanDAO" singleton="true">
       <property name="sessionFactory">
                <ref bean="sessionFactory" />
            </property>
       </bean> 
    <!-- ========================================= Hibernate ========================================= -->
    <!-- fumixterm/siga/ -->
        <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName">
        <value>com.mysql.jdbc.Driver</value>
        </property>
        <property name="url">
        <value>jdbc:mysql://<host>:<port>/<db_name></value>
        </property>
        <property name="username" value="root"></property>
        <property name="password" value=""></property>
        </bean>    
        
        <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="mappingResources">
        <list>
        <value>fumixterm/siga/dto/FuturasAsignacionesDTO.hbm.xml</value>
        </list>
        </property>
        <property name="hibernateProperties">
        <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
                <prop key="hibernate.show_sql">true</prop>
        </props>
        </property>
        
        <property name="dataSource">
            <ref local="dataSource"/>
        </property>
        </bean>

</beans>
Tener en cuenta que los nombres de estos beans son genericos, tu definiras las clases que requieres para hacer las consultas a la BD, ten en cuenta que debes extender la clase HibernateDAOSupport en donde vayas a usar Hibernate.

El archivo de configuracion Spring lo defino en una clase llmada BeanFactory.java

Código PHP:
public abstract class BeanFactory {

    protected static 
ApplicationContext applicationContext;

    public static 
void init() {
        if (
applicationContext == null) {
            
applicationContext = new ClassPathXmlApplicationContext("ruta/del/xml/ApplicationContext.xml");
        }
    }

    public static 
Object getBean(String beanId) {
        
init();
        
Object o applicationContext.getBean(beanId);
        return 
o;
    }
    
    public static 
BeanBO getBeanBO(){
        return (
BeanBOgetBean("beanBO"); // asi nombraste a tu bean en el ApplicationContext.xml
        
    
}



Despues Inicializas Spring en un Listener:

Código PHP:
public class ApplicationContextListener implements ServletContextListener {

    public 
void contextDestroyed(ServletContextEvent arg0) {
        
// TODO Auto-generated method stub

    
}

    public 
void contextInitialized(ServletContextEvent event) {
        
initSpring(event.getServletContext());

    }
    
    
    private 
void initSpring(ServletContext servletContext) {

        try {
            
BeanFactory.init();
            
System.out.println("********** BeanFactory Iniciado *************");
        } catch (
Throwable e) {
            
e.printStackTrace();
            throw new 
Error("Exiten problemas al iniciar la aplicacion base, " +
                    
"verifique su archivo spring.config.location en web.xml");
        }

    } 
Obviamente este listener debe estar definido en el archivo de despliegue de web.xml


Espero te sea útil.
__________________
El principio de la sabiduría es el temor de Jehová
Visita mi Blog

Última edición por fatherjuan; 14/01/2008 a las 13:14