如何覆盖 liferay 7 中的 UserFinderImpl?

How to override UserFinderImpl in liferay 7?

我需要覆盖 UserFinderImpl 才能执行自定义 sql 查询。我使用动态查询开发了这个项目。但是我需要通过自定义 sql.So 来实现,请告诉我该怎么做?提前谢谢..

UserFinderImpl 被认为是内部 class 并且它并不意味着被扩展/覆盖/替换。在 Liferay 7 之前,做这样的事情只是被劝阻并且被认为是不好的做法。由于整体方法和 EXT 插件,不可能强制执行这种隔离。

模块化架构或 Liferay 7(基于 OSGi)允许封装和隔离内部 classes,并且只允许通过定义良好的 public API 进行扩展。 Liferay 7 中没有允许您覆盖/修改 UserFinderImpl 的扩展点。如果你绝对需要这样做,你将不得不从源代码编译并进行适当的修改(这基本上是 EXT 插件在 Liferay 7 之前以更复杂的方式做的事情)。