我对反应式编程和spring webflux还不熟悉,我想试试MediaType。TEXT\u EVENT\u STREAM\u VALUE,因此我有以下代码:
@GetMapping(value = "/stream", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public Flux<Menu> streamAllAvailableMenu() {
return menuService.findAll();
}
我对结果的期望是,我在浏览器中调用这个API(使用浏览器的原因不是所有客户端都支持实时流),当我在mongob中更改我的数据时,它应该会立即在我的浏览器中反映更改,就像使用web套接字技术的实时流,但实际上它并没有改变任何东西。
我是不是误解了这个分流机制,还是我遗漏了什么?
我正在使用完全反应式堆栈:
Spring webflux
Netty
Spring Data MongoDB Reactive
您所描述的用例不在websocket上运行(而是使用服务器发送事件的普通HTTP)。为了实现您想要做的事情,您需要利用Spring Data MongoDB中的可裁剪光标支持。
为此,您需要调整存储库定义,如下所示:
public interface PersonRepository extends ReactiveMongoRepository<Person, String> {
@Tailable
Flux<Person> findByFirstname(String firstname);
}
我使用包。当我编写''函数时,例如、等,会出现此错误消息。 错误:IllegalArgumentException(Java):您的InputStream既不是OLE2流,也不是OOXML流 在使用这个函数之前,我按照http://www.r-bloggers.com/get-r-and-java-1-8-to-work-cogether-on-osx/link的方式对R和Mac OS X之间的崩
如果我的API提供了一个流,客户端是否有办法修改基础集合? 例如: 客户端是否可以调用并以某种方式修改的内容?
我想读取Excel文件,这些文件以的形式通过REST传递。为此,我有类: 如果我用这个来运行这个: 很好用。但是,如果我将这个类与一起使用,来自over REST的 我包装流是因为如果我不这样做,我会得到这个异常:。我从这里得到的。 难道不能使用Apache POI和REST中的流来读取Excel文件吗?还是我做错了什么?
我想把这个列表收集到两张地图中(如果可能的话,也可以在一张地图中) 一个映射应该将映射到用户玩过的游戏数量--基本上是具有状态的游戏 另一个映射应该将存储到所有游戏计数。它看起来像这样 有没有一种方法可以在块内实现,而不是使用?
在Java 8中,我越来越多地用替换返回值。 所以我曾经有: 我现在使用: 我对此的论点是: 它强制执行基础列表的不变性。 它隐藏了存在基础列表的事实。之后可以将其更改为集合或其他结构,而无需更改方法签名 它很好地封装了该方法的用户希望对项进行处理,而不是对列表进行处理 如果需要,它可以在以后进行简单的并行化 事实上,现在,在我的代码中,返回<code>列表 显然,其中一些可以通过不可变集合来实现