SPING+Hibernate使用数据源

Spring的Dao支持类:

 
JdbcDaoSupport - JDBC数据访问对象的基类。 需要一个DataSource,同时为子类提供 JdbcTemplate。
(已在前一篇文章中有介绍:使用Spring的jdbcTemplate进一步简化JDBC操作
 
HibernateDaoSupport - Hibernate数据访问对象的基类。 需要一个SessionFactory,同时为子类提供 HibernateTemplate。也可以选择直接通过提供一个HibernateTemplate来初始化, 这样就可以重用后者的设置,例如SessionFactory, flush模式,异常翻译器(exception translator)等等。
(该SPRING配置是本文重点。) 
 
JdoDaoSupport - JDO数据访问对象的基类。 需要设置一个PersistenceManagerFactory, 同时为子类提供JdoTemplate。 (还没接触到。。。)
 
JpaDaoSupport - JPA数据访问对象的基类。 需要一个EntityManagerFactory,同时 为子类提供JpaTemplate。 (JPA好东东,已有耳闻但还没有学习。。。)

 

 

可选的数据源

spring默认的数据源为:org.springframework.jdbc.datasource.DriverManagerDataSource

如果使用C3P0数据源 class指定为:com.mchange.v2.c3p0.ComboPooledDataSource 并引入相关包。

如果使用DBCP数据源class指定为:org.apache.commons.dbcp.BasicDataSource 并引入相关包。  

 

<?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="dataSource" 
          class
="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
        
<property name="driverClassName"> 
            
<value>com.mysql.jdbc.Driver</value> 
        
</property> 
        
<property name="url"> 
            
<value>jdbc:mysql://localhost:3306/springdb</value> 
        
</property> 
        
<property name="username"> 
            
<value>root</value> 
        
</property> 
        
<property name="password"> 
            
<value>root</value> 
        
</property> 
    
</bean> 

    
<bean id="sessionFactory" 
          class
="org.springframework.orm.hibernate3.LocalSessionFactoryBean" 
          destroy-method
="close"> 
        
<property name="dataSource"> 
            
<ref bean="dataSource"/> 
        
</property> 
        
<property name="mappingResources"> 
            
<list> 
                
<value>com/fskjb/entity/User.hbm.xml</value> 
            
</list> 
        
</property> 
        
<property name="hibernateProperties"> 
            
<props> 
                
<prop key="hibernate.dialect"> 
                    org.hibernate.dialect.MySQLDialect 
                
</prop> 
            
</props> 
        
</property> 
    
</bean> 


    
<bean id="userDAO" class="com.fskjb.UserDAO"> 
        
<property name="sessionFactory"> 
            
<ref bean="sessionFactory"/> 
        
</property> 
    
</bean> 
</beans>

 

 

posted @ 2009-11-30 22:30  Fskjb  阅读(829)  评论(0编辑  收藏  举报
年年行好运