Spring 引导控制器中的 `new` 是不好的做法?

`new` in Spring boot controller is bad practice?

在一次培训中,我多次听说 new 在控制器中或在 Spring 启动应用程序中的服务是不好的做法,因为它会导致内存泄漏。有人告诉我们使用 Lombok

Lombok 是一个很棒的工具,但我想知道 new 的内存泄漏问题。此外,如果我使用 delombok,我会在那里看到相同的 new 关键字。

据我所知,垃圾收集器会删除所有不再被引用的对象。这也包括 Spring 引导控制器。我不是在谈论静态变量,不是封闭流等。只是控制器方法中的局部变量。

请告诉我,如果我错了,如果我没有理解正确的地方。

On a training I heard several times that new in controller or in service in Spring boot application is bad practice because it can cause a memory leak. And one told us to use Lombok

使用 new 运算符在我们的 spring bean 中创建对象和使用 Lombok 实际上是两件不同的事情,而主要目标是不同的:为第一个创建对象与在第二个中生成代码编译 class 以减少样板代码。

I don't speak about static variables, not closed streams, etc. Just a local variable in controller method.

关于您对 new 运算符的理解,您应该忘记并理解每次您必须创建一个不是由容器管理的 bean 的对象时,您必须使用 new 运算符.
例如,您希望如何在不创建实体的情况下将其保存在数据库中?
除了局部变量之外,还存在方法调用的范围。因此,如果您在方法中创建了数百万个大对象,则不太可能发生内存泄漏。但你到底为什么要这么做?