【发布时间】:2020-08-26 15:12:45
【问题描述】:
我通常是一名 c# 开发人员,但时不时地在 Java 上工作,然后我看到很多使用 Spring 在 private 属性上的依赖注入,没有设置值的公共方式。我很惊讶这确实有效,但我想这可能是通过反射实现的?
这肯定是可怕的做法?!我看不出任何单元测试或检查类的人怎么可能知道需要从某个外部框架设置私有成员。
当您进行单元测试时,您甚至会如何设置属性?还是单独使用类?
我猜你必须在你的单元测试中使用 spring,这看起来真的有点矫枉过正。当然,您应该能够在没有 IOC 容器的情况下进行单元测试吗?类变得完全依赖于spring...
我错过了什么吗?
依赖注入是否应该不总是涉及某种公共设置器,如果可能的话最好使用构造函数?还是我缺少关于 Java 的一些东西...?
谢谢
【问题讨论】:
标签: java spring dependency-injection inversion-of-control ioc-container