You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Skyve实例中的全部客户列表?优先采用Skyve API实现

获取Skyve实例客户列表的Skyve API实现方案

直接通过Skyve的持久化API查询系统内置的SecurityUser实体,就能替代直接操作数据库表的方案,实现去重的客户列表获取,示例代码如下:

import org.skyve.domain.types.Conversation;
import org.skyve.persistence.Query;
import org.skyve.persistence.Persistence;
import org.skyve.web.WebContext;
import java.util.List;

// Web环境下获取持久化实例
Conversation conversation = WebContext.getConversation();
Persistence persistence = conversation.getPersistence();

// 构建SecurityUser实体的查询
Query query = persistence.newQuery(org.skyve.domain.user.SecurityUser.MODULE_NAME, 
                                  org.skyve.domain.user.SecurityUser.DOCUMENT_NAME);
// 指定返回bizCustomer字段并开启去重
query.getProjection().add(org.skyve.domain.user.SecurityUser.bizCustomerPropertyName);
query.setDistinct(true);

// 执行查询得到客户列表
List<String> customerList = query.beanResults(String.class);

补充说明:

  • 如果是在非Web环境(比如后台定时任务),可以直接通过Persistence.get()获取持久化实例,无需依赖WebContext。
  • 该方式完全遵循Skyve的架构规范,避免了直接操作底层数据库表,适配Skyve的版本迭代和多数据库支持特性。

内容的提问来源于stack exchange,提问作者Mat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 04:18:16