持久层:传统的JDBC、框架技术(Hibernate、JDO、IBatis等)
Spring支持的持久层:传统的JDBC、Hibernate
传统JDBC支持:(JdbcDaoSupport、JdbcTemplate)
1. 导入Spring(前4个jar)。
2. 在applicationContext.xml中配置数据库的连接信息。(DirverManagerDataSource、BasicDataSource)
3. 配置dao,设置数据源。
4. 获取对象,执行相关操作。
Hibernate支持:(HibernateDaoSupport、HibernateTemplae)
注意哟:先导入Spring、再导入Hibernate支持。(MyEclipse8.6)
跟 JDBC配置类似。
事务管理:
<!-- 配置数据连接 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation" value="file:src/hibernate.cfg.xml"> </property> </bean> <!-- 配置事务对象 --> <bean id="tran" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <!-- 对事务的几种传播特性进行配置 --> <tx:advice id="tranAdv" transaction-manager="tran"> <tx:attributes> <tx:method name="add*" propagation="REQUIRED" isolation="READ_COMMITTED"/> <tx:method name="update*" propagation="REQUIRED" isolation="READ_COMMITTED"/> <tx:method name="delete*" propagation="REQUIRED" isolation="READ_COMMITTED"/> <tx:method name="*" read-only="true"/> </tx:attributes> </tx:advice> <!-- 必须将事务切入才可使用 --> <aop:config> <aop:pointcut expression="execution(* com.zuxia.dao.impl.*.*(..))" id="pointCut"/> <aop:advisor advice-ref="tranAdv" pointcut-ref="pointCut" /> </aop:config> <bean id="ddao" class="com.zuxia.dao.impl.DeptDAO"> <property name="sessionFactory" ref="sessionFactory" /> </bean>