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 (BeanBO) getBean("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.