Java Spring声明性事务管理

Java Spring声明性事务管理,java,spring,hibernate,spring-transactions,Java,Spring,Hibernate,Spring Transactions,在spring配置文件中,我公司的最后一位开发人员声明为 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource"> <ref bean="autoCreateHocDS"/> </property> </

在spring配置文件中,我公司的最后一位开发人员声明为

 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource">
        <ref bean="autoCreateHocDS"/>
    </property>
</bean>

但并没有任何像@Transaction这样的AOP或注释被编写来定义应该应用它的类

这里我的第一个执行类是OCsAutoCreateHocJob,它是内部调用服务和dao类


所以这里我的疑问是,在类链中应用什么级别的事务管理,或者在没有定义事务级别的情况下它将不应用,或者事务管理将应用于所有类

您通常使用
@Transaction
注释您的服务层,因为这是执行业务逻辑(计算、数据操作等)的层,需要多次调用DAO层。这样,您可以使用单个事务执行一系列数据库方法,其中可以回滚在发生错误时执行的所有数据库操作

<!-- proxy-target-class is set to true to use transactional scope -->
    <tx:annotation-driven proxy-target-class="true" transaction-manager="tomcatTransactionManager" />

<!-- Transaction Manager -->
    <bean id="tomcatTransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="myDataSource" />
    </bean>


是。我知道,但若我们不在服务层声明和@tra,它将如何工作?在配置文件中,我只看到配置文件中的tomcatTransactionManager bean,并没有看到其他内容。那么在这种情况下,它将如何工作?