簡體   English   中英

如何在 Java Web Services 中實現單向操作?

[英]How to implement one-way operation in Java Web Services?

如何在 Web 服務中實現單向操作(使用 Java 或 Spring 注釋)?

我試圖添加如下所示的一種方式

   @WebService
   public interface DanduServices {
     @Oneway
     public void saveDanduInformation(@WebParam(name = "serv") ServDTO Serv, @WebParam(name = "dandu") DanduDTO danduDto);

但它仍然是請求-響應而不是異步或一種方式。

任何人都可以建議在服務端點中進行單向操作,並讓其他操作按照請求-響應進行操作嗎?

不過,您也需要考慮協議。 在 HTTP 中,當您發送請求時,您會等待響應,如果一段時間后沒有響應返回,您將收到超時錯誤。 因此,當您談論單向(您應該說可能是異步請求)時,您確實需要准確說明您的意思。 您是否想確認您的消息已收到,即讓服務器以 OK 狀態代碼回復並關閉並完成它的任務,但您不等待任務完成? 然后你需要產生另一個線程。 Spring 對此具有 AOP,就像使用@Transactional進行事務處理一樣。 相反,您使用@Async注釋您的方法並返回Future<Something> 您還需要在配置中使用@EnableAsync 請參閱本文以獲取示例Hot To Do @Async

如果您甚至不關心服務器是否收到您的請求,您就不想使用 TCP/HTTP 而是使用 UDP,例如 VOIP(互聯網電話)中使用的 UDP 速度更快,但這將取決於您的客戶端.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM