【发布时间】:2023-02-21 00:09:23
【问题描述】:
我有一个服务类,它执行标准的 crud 操作,但是我想验证以前和当前实体之间的差异。我用公共非静态方法创建了一个单独的类,该方法执行一些操作并返回布尔值。此类不是通过服务中的构造函数注入的,而是通过 new 关键字创建的。好不好?是否应该将此类注释为组件?此外,如果调用此类来执行此验证,则似乎很难测试此类服务。
【问题讨论】:
标签: java spring spring-boot
我有一个服务类,它执行标准的 crud 操作,但是我想验证以前和当前实体之间的差异。我用公共非静态方法创建了一个单独的类,该方法执行一些操作并返回布尔值。此类不是通过服务中的构造函数注入的,而是通过 new 关键字创建的。好不好?是否应该将此类注释为组件?此外,如果调用此类来执行此验证,则似乎很难测试此类服务。
【问题讨论】:
标签: java spring spring-boot
我建议使用 @Component 注释,或者如果您将该类中的代码视为业务逻辑的一部分,我会为它使用 @Service 注释。
在我看来,当您使用注释和依赖注入来创建类的对象时,代码会更清晰。当您的代码增长并且您已使用 new 构造函数在多个位置自行初始化类时,重新处理它可能会很耗时。
不使用 Component 注释时会丢失一些东西:
【讨论】: