Here's some sample code in Java to process the Change Feed of a Cosmos DB NoSQL database using the Azure Java SDK:

import com.microsoft.azure.cosmosdb.ChangeFeedProcessor;
import com.microsoft.azure.cosmosdb.ChangeFeedProcessorBuilder;
import com.microsoft.azure.cosmosdb.ConnectionPolicy;
import com.microsoft.azure.cosmosdb.ConsistencyLevel;
import com.microsoft.azure.cosmosdb.Document;
import com.microsoft.azure.cosmosdb.DocumentClient;
import com.microsoft.azure.cosmosdb.DocumentClientException;
import com.microsoft.azure.cosmosdb.FeedOptions;
import com.microsoft.azure.cosmosdb.FeedResponse;
import com.microsoft.azure.cosmosdb.PartitionKeyRange;

public class CosmosDBChangeFeedProcessor {

    private static final String ENDPOINT_URI = "https://<your-cosmosdb-account-name>.documents.azure.com:443/";
    private static final String PRIMARY_KEY = "<your-cosmosdb-primary-key>";
    private static final String DATABASE_NAME = "<your-cosmosdb-database-name>";
    private static final String COLLECTION_NAME = "<your-cosmosdb-collection-name>";

    public static void main(String[] args) throws DocumentClientException, InterruptedException {
        DocumentClient documentClient = new DocumentClient(ENDPOINT_URI, PRIMARY_KEY, ConnectionPolicy.GetDefault(), ConsistencyLevel.Session);

        FeedOptions feedOptions = new FeedOptions();
        feedOptions.setMaxItemCount(100);
        feedOptions.setPartitionKeyRangeId("0");
        feedOptions.setEnableCrossPartitionQuery(true);

        // Query the collection for partition key ranges
        FeedResponse<PartitionKeyRange> response = documentClient.readPartitionKeyRangeFeed(
                String.format("/dbs/%s/colls/%s/pkranges", DATABASE_NAME, COLLECTION_NAME), feedOptions);

        // Create the ChangeFeedProcessor instance
        ChangeFeedProcessor changeFeedProcessor = new ChangeFeedProcessorBuilder()
                .hostName("your-change-feed-processor-host-name")
                .feedCollection(documentClient, DATABASE_NAME, COLLECTION_NAME)
                .checkpointStoreCollection(documentClient, DATABASE_NAME, "your-checkpoint-store-collection-name")
                .handleChanges((docs, context) -> {
                    for (Document doc : docs) {
                        System.out.println("Received document change: " + doc.toJson());
                    }
                })
                .build();

        // Start the change feed processor
        changeFeedProcessor.start();
    }
}

In this code, the DocumentClient class is used to connect to the Cosmos DB database, and the ChangeFeedProcessor class is used to process the Change Feed of the database. The code defines a handler that is called for each set of changes to the database, and it simply prints the JSON representation of each changed document to the console.
ต่อไปนี้คือโค้ดตัวอย่างบางส่วนใน Java เพื่อประมวลผลฟีดการเปลี่ยนแปลงของฐานข้อมูล Cosmos DB NoSQL โดยใช้ Azure Java SDK: import com.microsoft.azure.cosmosdb.ChangeFeedProcessor; นำเข้า com.microsoft.azure.cosmosdb.ChangeFeedProcessorBuilder; นำเข้า com.microsoft.azure.cosmosdb.ConnectionPolicy; นำเข้า com.microsoft.azure.cosmosdb.ConsistencyLevel; นำเข้า com.microsoft.azure.cosmosdb.Document; นำเข้า com.microsoft.azure.cosmosdb.DocumentClient; นำเข้า com.microsoft.azure.cosmosdb.DocumentClientException; นำเข้า com.microsoft.azure.cosmosdb.FeedOptions; นำเข้า com.microsoft.azure.cosmosdb.FeedResponse; นำเข้า com.microsoft.azure.cosmosdb.PartitionKeyRange; คลาสสาธารณะ CosmosDBChangeFeedProcessor { สตริงสุดท้ายแบบคงที่ส่วนตัว ENDPOINT_URI = "https://<your-cosmosdb-account-name>.documents.azure.com:443/"; สตริงสุดท้ายแบบคงที่ส่วนตัว PRIMARY_KEY = "<your-cosmosdb-primary-key>"; สตริงสุดท้ายคงที่ส่วนตัว DATABASE_NAME = "<your-cosmosdb-database-name>"; สตริงสุดท้ายแบบคงที่ส่วนตัว COLLECTION_NAME = "<your-cosmosdb-collection-name>"; โมฆะคงที่สาธารณะ main (String [] args) พ่น DocumentClientException, InterruptedException { DocumentClient documentClient = DocumentClient ใหม่ (ENDPOINT_URI, PRIMARY_KEY, ConnectionPolicy.GetDefault (), ConsistencyLevel.Session); FeedOptions feedOptions = ใหม่ FeedOptions(); feedOptions.setMaxItemCount(100); feedOptions.setPartitionKeyRangeId("0"); feedOptions.setEnableCrossPartitionQuery(จริง); // สืบค้นคอลเลกชันสำหรับช่วงคีย์ของพาร์ติชัน FeedResponse<PartitionKeyRange> response = documentClient.readPartitionKeyRangeFeed( String.format("/dbs/%s/colls/%s/pkranges", DATABASE_NAME, COLLECTION_NAME), feedOptions); // สร้างอินสแตนซ์ ChangeFeedProcessor ChangeFeedProcessor changeFeedProcessor = new ChangeFeedProcessorBuilder() .hostName("your-change-feed-processor-host-name") .feedCollection(documentClient, DATABASE_NAME, COLLECTION_NAME) .checkpointStoreCollection(documentClient, DATABASE_NAME, "จุดตรวจสอบของคุณ -store-collection-name") .handleChanges((เอกสาร บริบท) -> { สำหรับ (เอกสาร doc : docs) { System.out.println("ได้รับการเปลี่ยนแปลงเอกสาร: " + doc.toJson()); } }) .สร้าง(); // เริ่มตัวประมวลผลการเปลี่ยนแปลงฟีด changeFeedProcessor.start(); } } ในโค้ดนี้ คลาส DocumentClient ใช้เพื่อเชื่อมต่อกับฐานข้อมูล Cosmos DB และคลาส ChangeFeedProcessor ใช้เพื่อประมวลผล Change Feed ของฐานข้อมูล โค้ดจะกำหนดตัวจัดการที่ถูกเรียกใช้สำหรับการเปลี่ยนแปลงแต่ละชุดในฐานข้อมูล และจะพิมพ์การแสดง JSON ของเอกสารที่เปลี่ยนแปลงแต่ละฉบับไปยังคอนโซล
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence