2013-07-09 63 views
-2

我正在開發通過 網絡套接字與服務器通信的swing應用程序。在鞦韆應用中使用網絡

我打算爲發送/接收數據包創建單獨的線程,連接 並斷開連接操作。我也打算使用隊列來處理數據包處理。

你可以建議,這是正確的網絡層設計? 還是存在更好的東西?

謝謝。

回答

1

在這個問題上很難說些什麼,這取決於它。

如果您有富互聯網應用程序的經驗,您可以用類似的方式設計您的應用程序。因此,您可以使用運行SOAP的Web服務,並且Swing應用程序通過異步HTTP調用交換數據(類似於Ajax的方法)。

此外,我強烈建議在開始之前設計某種MVC,其中View將是您的Swing組件,Controller將處理業務規則/驗證/線程,並且Model會處理桌面應用程序和Web之間的通信服務器。

最後,我會阻止排隊包。我過去做過,後悔因爲它變得太複雜和令人費解。在我的情況下,我意識到如果出現問題,我會拋出異常並處理錯誤。因此,在某些情況下,它會在用戶界面上產生錯誤消息,用戶可以採取應急措施;在其他情況下,應用程序會再次嘗試相同的操作。

我希望這個描述能夠以某種方式幫助你。

乾杯,

+0

但是,如果沒有包的隊列 - 如果應用程序沒有處理以前的包併到達新包,會發生什麼? – pro100sanya

+0

你正在談論網絡套件,對吧?這應該是一個問題,你的HTTP客戶端應該能夠順利處理它。順便說一下,我會建議使用:http://hc.apache.org/httpcomponents-client-ga – Rafa

+0

**更正**不應該擔心... – Rafa