小编Iqb*_*mid的帖子

是否需要手动销毁Spring原型bean?

我注意到@PreDestroy我的原型范围Spring bean 的钩子没有被执行.

我在这里读到这实际上是设计的.Spring容器将销毁单例bean,但不会销毁原型bean.我不清楚为什么.如果Spring容器将创建我的原型bean并执行它的@PostConstruct钩子,为什么在容器关闭时它也不会破坏我的bean?一旦我的Spring容器关闭,继续使用它的任何bean都有意义吗?我看不到你想要在完成bean之前关闭容器的场景.甚至可以在容器关闭后继续使用原型Spring bean吗?

上面描述了我的主要问题的令人费解的背景:如果Spring容器没有破坏原型bean,那是否意味着可能发生内存泄漏?或者原型bean会在某些时候被垃圾收集?

春季文件指出:

客户端代码必须清理原型范围的对象并释放原型bean所持有的昂贵资源.要使Spring容器释放原型范围的bean所拥有的资源,请尝试使用自定义bean后处理器,它包含对需要清理的bean的引用.

那是什么意思?该文本告诉我,我作为程序员负责明确(手动)销毁我的原型bean.它是否正确?如果是这样,我该怎么做?

java spring garbage-collection spring-bean predestroy

15
推荐指数
1
解决办法
5371
查看次数

我使用哪个MySQL连接器:mysql-connector-java-5.1.46.jar或mysql-connector-java-5.1.46-bin.jar有什么区别?

我准备第一次使用jdbc,我正在安装MySQL的jdbc驱动程序.

但是,我不清楚哪些文件移动到Eclipse中的WEB_INF/lib文件夹.它们似乎都包含相同的内容,并且包含在MySQL连接器的下载zip文件中.

我已经到处搜索,但一直无法找到任何文档来解释使用哪些文件.

java mysql jdbc mysql-connector

14
推荐指数
1
解决办法
4720
查看次数

删除和重新创建 NTFS 日志(或如何正确运行“fsutil usn”命令)

我遇到了chkdsk第 3 阶段错误(与 NTFS usn 日志和安全描述符相关)。

损坏的 NTFS 日志会阻止chkdsk /f运行卷修复。因此chkdsk修复将无法进行,这不是解决方案。

但是,我听说可以通过删除并重新创建 NTFS 日志来修复损坏。这可以通过在命令提示符或具有管理员权限的 PowerShell 中执行以下命令来完成:

fsutil usn deletejournal /d /n
Run Code Online (Sandbox Code Playgroud)

其次是

fsutil usn createjournal m=<maxsize> a=<allocationdelta> <volumepath>
Run Code Online (Sandbox Code Playgroud)

但是,有关这些命令的开关和参数的 Microsoft 文档非常少。任何人都可以请建议:

  1. /d 和 /n 开关的实际作用。它们是永久性的吗?如果我创建新日记,是否需要重新启用它们?如果必须的话我该如何重新启用?
  2. <maxsize>和参数是什么<allocationdelta>
  3. 我如何确定要设置哪些<maxsize><allocationdelta>?默认值是多少?

最后,以这种方式删除 NTFS 日志有多安全?

谢谢。

在此输入图像描述

filesystems ntfs window corruption fsutil

4
推荐指数
1
解决办法
7932
查看次数