java - 从基于配置的服务 bean 切换到基于注释的服务 bean 时的 TransactionProxyFactoryBean

标签 java hibernate spring proxy transactions

我读到了有关使用

  <context:component-scan base-package="tld.mydomain.business">
      <context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/>
  </context:component-scan>

并用 @Service("myService") 注释我的服务 bean,并且认为很好,我会这样做,因为我已经使用我的 Controller 这样做了。我通常的服务 bean 配置如下:

  <bean id="userService" parent="txProxyTemplate">
    <property name="target">
      <bean class="tld.mydomain.business.UserServiceImpl"/>
    </property>
    <property name="proxyInterfaces" value="tld.mydomain.business.UserService"/>
  </bean>

现在我生成了它们,如何将它们包装在 Hibernate 代理(例如 TransactionProxyFactoryBean)中?或者还有更好的方法吗?

我还没有完全使用@Repository,这是必需的吗?

干杯

尼克

最佳答案

在现代 Spring 应用程序中不鼓励使用 TransactionProxyFactoryBean,尽管它仍然有效。如今典型的方法是使用 @Transactional 注释类,然后将此元素粘贴到应用程序上下文文件中:

<tx:annotation-driven transaction-manager="txManager"/>

此策略和其他策略是 discussed引用文档中有很深入的内容,甚至还有关于 TransactionProxyFactoryBean 的旁注。

关于java - 从基于配置的服务 bean 切换到基于注释的服务 bean 时的 TransactionProxyFactoryBean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1632256/

相关文章:

java - libGDX texturepacker 旋转

java - JPA:获取所有抛出空指针异常的行

java - hibernate中composite-id复杂映射

java - 使用 Spring 从命令行运行 Java cron 时出错

java - Spring - 如果存在主 bean,则不要创建 bean

java - 从 Clojure 调用可变参数 Java 函数时出现问题

java - 将字符串转换为时间戳会产生额外的 '0'

java - 错误org.grails.orm.hibernate.cfg.HibernateMappingBuilder-ORM映射无效等

spring - 直接调用@Bean注解的方法。改用依赖注入(inject)

java - 尝试从 Spring Boot 创建 SWING/AWT 框架时由 : java. awt.HeadlessException 引起