229.6. gridfs 操作 - producer 端点


229.6.1. æ•°é‡�

返回集合中文件总数,返回 Integer 作为 OUT 消息正文。

// from("direct:count").to("mongodb-gridfs?database=tickets&operation=count");
Integer result = template.requestBodyAndHeader("direct:count", "irrelevantBody");
assertTrue("Result is not of type Long", result instanceof Integer);
Copy to Clipboard Toggle word wrap

您可以提供文件名标头,以提供与文件名匹配的文件计数。

Map<String, Object> headers = new HashMap<String, Object>();
headers.put(Exchange.FILE_NAME, "filename.txt");
Integer count = template.requestBodyAndHeaders("direct:count", query, headers);
Copy to Clipboard Toggle word wrap

229.6.2. listAll

返回列出选项卡分隔流中所有文件名及其 ID 的 Reader。

// from("direct:listAll").to("mongodb-gridfs?database=tickets&operation=listAll");
Reader result = template.requestBodyAndHeader("direct:listAll", "irrelevantBody");

filename1.txt   1252314321
filename2.txt   2897651254
Copy to Clipboard Toggle word wrap

229.6.3. findOne

在 GridFS 系统中查找文件,并将正文设置为内容的 InputStream。另外,还提供元数据的标头。它使用传入标头中的 Exchange.FILE_NAME 来确定要找到的文件。

// from("direct:findOne").to("mongodb-gridfs?database=tickets&operation=findOne");
Map<String, Object> headers = new HashMap<String, Object>();
headers.put(Exchange.FILE_NAME, "filename.txt");
InputStream result = template.requestBodyAndHeaders("direct:findOne", "irrelevantBody", headers);
Copy to Clipboard Toggle word wrap

229.6.4. create

在 GridFs 数据库中创建一个新文件。它使用来自传入标头的 Exchange.FILE_NAME 作为名称,正文内容(作为 InputStream)作为内容。

// from("direct:create").to("mongodb-gridfs?database=tickets&operation=create");
Map<String, Object> headers = new HashMap<String, Object>();
headers.put(Exchange.FILE_NAME, "filename.txt");
InputStream stream = ... the data for the file ...
template.requestBodyAndHeaders("direct:create", stream, headers);
Copy to Clipboard Toggle word wrap

229.6.5. remove

从 GridFS 数据库中删除文件。

// from("direct:remove").to("mongodb-gridfs?database=tickets&operation=remove");
Map<String, Object> headers = new HashMap<String, Object>();
headers.put(Exchange.FILE_NAME, "filename.txt");
template.requestBodyAndHeaders("direct:remove", "", headers);
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat