在 Liferay 中插入用户的批量提交

Batch Commit for Inserting users in Liferay

我们正在尝试在 Liferay 中插入大约 10 万用户。有没有办法在一批提交中更新所有这些,而不是单独调用来添加每个用户?

@sandeep:

是的,Liferay 不向我们提供 add/update 批量用户,因为在用户创建后,一些 table 受到影响并且用户索引,但如果你想这样做,我有两个建议:

  1. 参考文章的 REINDEX 选项:在这种情况下,您可以创建一批具有某种值的计数器范围和 update/add 那个批次,但是事情是 Liferay 内部默认调用 addUser。所以你可以使用它的迭代方式。
  2. 无服务 : 创建一些自定义脚本并直接命中数据库一次。这会创建用户,但在这种情况下,您必须处理其他需要插入用户 ID 或相应数据的 liferay table。

它认为是的,这是可能的。

构建一个自定义远程服务实体,如 BulkUserServiceUtil.addUsers,在其中为每个用户调用标准方法 UserLocalServiceUtil.addUser

BulkUserServiceUtil 方法返回事务已提交。