第 3 章 查询远程缓存
您可以在 Data Grid 服务器上索引和查询远程缓存。
3.1. 从 Hot Rod Java 客户端查询缓存 复制链接链接已复制到粘贴板!
Data Grid 可让您通过 Hot Rod 端点,以编程方式从 Java 客户端查询远程缓存。此流程解释了如何索引查询存储书签实例的远程缓存。
先决条件
-
将 ProtoStream 处理器添加到
pom.xml
中。
Data Grid 为 @ProtoField
和 @ProtoDoc
注解提供此处理器,以便您可以生成 Protobuf 模式并执行查询。
流程
在您的类中添加索引注解,如下例所示:
Book.java
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在新类中实施
SerializationContextInitializer
接口,然后添加@AutoProtoSchemaBuilder
注释。-
使用
includeClasses
参数引用包含@ProtoField
和@ProtoDoc
注解的类。 -
使用
schemaFileName
和schemaFilePath
参数定义您生成的和文件系统路径的 Protobuf 模式的名称。 使用
schemaPackageName
参数指定 Protobuf 模式的软件包名称。RemoteQueryInitializer.java
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
使用
编译您的项目。
此流程中的代码示例生成
proto/book.proto
模式和注释Book
类的RemoteQueryInitializerImpl.java
实现。
后续步骤
创建一个远程缓存,将数据仓库配置为索引您的实体。例如,以下远程缓存会索引您在上一步中生成的 book.proto
模式中的书签实体:
以下 RemoteQuery
类执行以下操作:
-
将
RemoteQueryInitializerImpl
serialization 上下文注册到 Hot Rod Java 客户端。 -
将 Protobuf 模式
书.proto
注册到 Data Grid Server。 -
将两个书签
实例
添加到远程缓存中。 - 执行与标题中的关键字匹配的全文本查询。
RemoteQuery.java