gpt4 book ai didi

java - JAX-RS - 同步和线程

转载 作者:行者123 更新时间:2023-11-30 09:16:53 25 4
gpt4 key购买 nike

我正在使用 JAX-RS 开发一堆 Restful API(1 个 POST 和 1 个 GET)。 post 方法在表中插入一些行,而 GET 方法除了从数据库中获取更多数据外还获取插入的数据。

我面临的问题是 GET 方法需要在 POST 方法之后立即执行。这是业务需求,GET 方法在数据库中查询一些数据。但是POST方法还没有完成,调用了GET方法。

有没有一种方法可以暂停 GET 方法,直到 POST 方法完成为止,尽管从客户端调用了 GET 方法。

任何人都可以分享代码片段来完成这个任务。谢谢

最佳答案

如果您知道必须暂停 HTTP GET 请求处理的条件,则异步 HTTP 请求处理会有所帮助。

由于 POST 和 GET 请求由两个不同的线程处理,您将确保通知处理 GET 请求的线程已完成 POST 请求的处理。这可以通过一些信号量来实现。

异步 ​​HTTP 请求处理虽然在 Servlet 3.0 中可用,但在 JAX-RS 1.1 中未以标准化方式提供。然而,它是 JAX-RS 2.0 (Java EE 7) 的一部分,可通过 @Suspended 获得。注解。如果你想使用 JAX-RS 1.1(又名 Java EE 6),你可能需要依赖提供者的能力;例如,RESTEasy supports async HTTP request processing通过 Java EE 6 应用程序的 @Suspend 注释。

关于java - JAX-RS - 同步和线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19236447/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com