Java 理解SpringXML注释元数据?
为了使用事务管理,您还需要声明要使用的transactionManager。该声明取决于访问数据的方法。例如,对于普通JDBC,您可以编写:Java 理解SpringXML注释元数据?,java,spring,transactions,annotations,Java,Spring,Transactions,Annotations,为了使用事务管理,您还需要声明要使用的transactionManager。该声明取决于访问数据的方法。例如,对于普通JDBC,您可以编写: <tx:annotation-driven transaction-manager="transactionManager" /> 此声明用于处理JPA数据访问配置的@PersistenceContext和@PersistenceUnit注释。howewer,对该注释的支持也包含在中,因此,如果使用的是 处理Persistence
<tx:annotation-driven transaction-manager="transactionManager" />
此声明用于处理JPA数据访问配置的@PersistenceContext和@PersistenceUnit注释。howewer,对该注释的支持也包含在
中,因此,如果使用的是
处理PersistenceUnit和PersistenceContext注释的BeanPostProcessor,用于注入相应的JPA资源EntityManager工厂和EntityManager。任何Spring托管对象中的任何此类带注释的字段或方法都将自动注入。
如果注释字段或方法被声明为EntityManagerFactory和EntityManager,则此后处理器将注入子接口。除了共享(“事务性”)EntityManager引用之外,实际类型将在早期进行验证,在该引用中,可能会在第一次实际调用时检测到类型不匹配。
<context:spring-configured />
<context:component-scan...
<tx:annotation-driven transaction-manager="transactionManager" />
<context:component-scan...
<bean
class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />
<tx:annotation-driven transaction-manager="transactionManager" />
<bean id = "transactionManager" class = "org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name = "dataSource" ref = "dataSource" />
</bean>
<bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />