Spring集成Hibernate3
Spring集成Hibernate3同集成Jdbc一样,提供了模板,使得我们只需要关心数据表的操作,资源的关闭打开、异常的处理交给Spring来完成,这个模板就是HibernateTemplate。HibernateTemplate(DAO支持类)通过SessionFactory来获取,所以看一下如何在XML中配置SessionFactory
//数据源
<bean id="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver "> </property>
<property name="url" value="jdbc:mysql://localhost:3306/dataBase"> </property>
<property name="username" value="root"></property>
<property name="password" value=""></property>
</bean>
//SessionFactory Bean
bean id="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
//数据源
<property name="dataSource">
<ref bean="dataSource"/>
</property>
//其他一些属性、例如:方言、是否打印SQL。。。。
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
//映射文件
<property name="mappingResources">
<list>
<value >hibernate/Users.hbm.xml</value>
</list>
</property>
</bean>
在应用程序中可以通过SessionFactory sf= getBean(“sessionFactory”,SessionFactory.class);
HibernateTemplate ht=new HibernateTemplate(sf);
然后通过HibernateTemplate操作表。
ApplicationContextac=new ClassPathXmlApplicationContext("applicationContext.xml");
SessionFactorysessionFactory=ac.getBean("sessionFactory",SessionFactory.class);
HibernateTemplate ht=newHibernateTemplate(sessionFactory);
Users user=new Users();
user.setUname("zhangsan");
user.setAge(1);
ht.save(user);
我们可以看出,该操作省略了资源的打开与关闭、异常的处理。
原文:http://blog.csdn.net/u013516966/article/details/39473237