代码如下
<bean id="txManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<tx:annotation-driven transaction-manager="txManager"/>services层代码:
@Service("stuServiceImpl")
@Transactional(propagation = Propagation.REQUIRED, readOnly = false)
public class StuServiceImpl implements StuService { @Autowired
private StuDaoImpl stuDaoImpl;
public void saveAll(Student s, Score ss) {
stuDaoImpl.saveAll(s, ss);
}
}dao层代码@Repository("stuDaoImpl")
public class StuDaoImpl implements StuDao { @Autowired
private SessionFactory sessionFactory;
public void saveAll(Student s,Score ss) {
Session session = sessionFactory.openSession();
session.save(s);
session.save(ss);
}
}事物没有提交,原因可能是什么,
小白,刚接触spring

解决方案 »

  1.   

    @Autowired   spring  应该是配置这个吧?
    <!-- 该 BeanPostProcessor 将自动对标注 @Autowired 的 Bean 进行注入 -->     
      <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/><bean id="txManager"
            class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
            <property name="dataSource" ref="dataSource" />
        </bean>
        <tx:annotation-driven transaction-manager="txManager"/>
    这种不是用@Resoure 么???还有你的session  
    Session session = sessionFactory.openSession()
    改成:Session session =sessionFactory.getCurrentSession()