首页 > 代码库 > Spring事务管理,使用@Transactional注解

Spring事务管理,使用@Transactional注解

1.导入所需jar包(Spring3.0之后不再一起发布依赖包,要自行下载)

技术分享

2.在applicationContext.xml配置文件加入以下属性

   <!-- spring 事务配置管理,Hibernate单数据源事务 -->
    <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
    <!-- 注册事务注解处理器  -->
    <tx:annotation-driven transaction-manager="transactionManager" />

3.在需要使用事务的类和方法上加上@Tranactional

@Transactional
public class NewsDaoImpl implements NewsDaoIntf{
    
    @Autowired
    @Qualifier("sessionFactory")
    private SessionFactory sf;
    
    private List<News> list=new ArrayList<News>();
    
    @Override
    @Transactional(readOnly=false)
    public List<News> getAllNews() {
        
        Session session=sf.getCurrentSession();

        Query query=session.createQuery("from News");
        list=query.getResultList();
        
        return list;
    }
}

 

Spring事务管理,使用@Transactional注解