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

如何在OCI Java SDK中通过标签过滤查询VCN?

使用OCI Java SDK筛选带特定自由格式标签的VCN

你当前的代码是获取单个VCN(getVcn接口),要批量筛选符合特定自由格式标签条件的VCN,需要使用listVcns接口,并添加标签过滤参数。以下是实现代码:

// 假设已完成VcnClient的配置初始化(包含认证、区域等信息)
VcnClient vcnClient = new VcnClient(configurationProvider);

// 构建列表查询请求,添加标签过滤和状态过滤
ListVcnsRequest listVcnsRequest = ListVcnsRequest.builder()
        // 精确匹配自由格式标签的键和值
        .freeformTagEquals("你的标签键", "你的标签值")
        // 仅筛选处于Available状态的VCN
        .lifecycleState(Vcn.LifecycleState.AVAILABLE)
        // 必填:指定要查询的Compartment OCID
        .compartmentId("目标Compartment的OCID")
        .build();

// 执行查询并获取响应
ListVcnsResponse listVcnsResponse = vcnClient.listVcns(listVcnsRequest);

// 遍历输出符合条件的VCN信息
for (Vcn vcn : listVcnsResponse.getItems()) {
    System.out.println("VCN名称: " + vcn.getDisplayName());
    System.out.println("VCN OCID: " + vcn.getId());
    System.out.println("VCN状态: " + vcn.getLifecycleState());
}

关键说明

  • freeformTagEquals("标签键", "标签值"):用于精确匹配自由格式标签的键值对,只有同时包含该键值对的VCN会被返回。如果需要添加多个标签条件,可以多次调用该方法(多个条件为逻辑与关系)。
  • compartmentId是必填参数,必须指定要查询资源所在的Compartment的OCID。
  • 如果需要等待特定VCN达到可用状态,可以对单个VCN使用getWaiters(),但批量查询时建议先通过lifecycleState过滤,再按需处理单个资源。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 22:30:53