gpt4 book ai didi

java - 连接 Bean 的好处

转载 作者:行者123 更新时间:2023-12-01 08:09:33 26 4
gpt4 key购买 nike

我们正在做一个相当复杂的项目,涉及多个数据源。目前,我们有多达 64 项 Web 服务交易,并且预计还会增加更多。我们定义了一个服务层和一个 DAO。服务层类通常具有一个或多个 DAO 类来完成查找数据的工作。 DAO 类使用 spring xml 接线连接到服务层类。

DAO 类都有一个 Interface 和一个 Impl。这里的关键是只有一个 Impl。虽然实现可能会发生变化,但即使这种情况也不太可能发生,因为 DAO 层来自稳定的遗留系统。

那么,如果只有一个 impl,那么使用 Spring 接线有什么好处呢?为什么不在服务层类中实例化该类?

最佳答案

一个原因是单元测试,如果类本身实例化它们,您将无法使用模拟将类与其依赖项隔离。

使用接口(interface)的一个好处是Spring可以使用JDK动态代理创建AOP代理(例如用于声明性事务管理),否则它将需要CGLIB。来自 Spring 文档 - 只要有选择,JDK 动态代理都是首选 http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/aop.html#aop-proxying -

关于java - 连接 Bean 的好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18533388/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com