Spring 应用

1、Spring 指定datasource
    A) 参考文档,找dbcp.BasicDataSource
        i、c3p0
        ii、dbcp
        iii、proxool
    B) 在DAO或者Service中注入dataSource
    C) 在Spring中可以使用PropertyPlaceHolderConfigure来读取Properties文件的内容
2、 Spring整合Hibernate
<bean .. AnnotationSessionFactoryBean>
<property dataSource
<annotatedClasses
引入hibernate 系列jar包
User上加Annotation
UserDAO或者UserServie 注入SessionFactory
jar包问题一个一个解决
声明式的事务管理
事务加在DAO层还是Service层?
annotation
加入annotation.xsd
加入txManager bean
<tx:annotation-driven
在需要事务的方法上加:@Transactional
需要注意,使用SessionFactory.getCurrentSession 不要使用OpenSession
@Transactional详解
什么时候rollback
运行期异常,非运行期异常不会触发rollback
必须uncheck (没有catch)
不管什么异常,只要你catch了,spring就会放弃管理
事务传播特性:propagation_required
read_only
xml(推荐,可以同时配置好多方法)
<bean txmanager
<aop:config
<aop:pointcut
<aop:advisor pointcut-ref advice-ref
<tx:advice: id transaction-manager =
HibernateTemplate、HibernateCallback、HibernateDaoSupport(不重要)介绍
设计模式:Template Method
Callback:回调/钩子函数
第一种:(建议)
在spring中初始化HibernateTemplate,注入sessionFactory
DAO里注入HibernateTemplate
save写getHibernateTemplate.save();
第二种:
从HibernateDaoSupport继承
必须写在xml文件中,无法使用Annotation,因为set方法在父类中,而且是final的
spring整合hibernate的时候使用packagesToScan属性,可以让spring自动

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值