2 回答

TA貢獻1808條經驗 獲得超4個贊
首先回答第一個問題,讀和寫可以有多種實現方式,用write和read只是其中一種,前面一個函數中的 clientConnection->write(block)是調用了QTcpSocket 類中的write方法來實現,如果你想不用此方法調用類中的read和write方法,就是你問的第二個問題,in和out的作用,in和out在這里將對socket中的報文收發變為數據流的形式來操作,QDataStream in(tcpSocket)比如這一句是將tcpSocket這個連接的實例對象作為一個文件描述符傳遞給QDataStream,然后 in >> blockSize這句話實現的就是相當于read的操作,就是將數據流讀出來。這個 out << (quint16)(block.size() - sizeof(quint16))是寫入。實際上對諸如串口收發,讀寫文件,socket通信等等,用C語言來寫,抽象出來都是對文件描述符進行操作,都可以用write和read來做,所以,實際上,第一種方法和第二種方法是一樣的,就看你選擇什么樣的方法了,第三個問題可參考out << (quint16)(block.size() - sizeof(quint16))這樣的方法在收到數據以后把數據發出去。

TA貢獻1794條經驗 獲得超8個贊
通常來說我們的服務器是分三類,數據庫的服務器,web的服務器,以及其他應用的服務器。這些其實都是小型機,服務器,只不過是根據用途不同而分類。正常來說一個網站的常規服務器的架構就是這三塊。
他所說的 " 數據庫連接到服務器" 可能是指 "怎么樣把web服務器和數據庫能夠建立連接 " 。這里所說的web服務器應該是指tomcat,apache,IIS,weblogic之類的東西,而不是真正意義上的web服務器。
這樣的話就簡單了。要么ODBC要么JDBC,該怎么樣怎么樣。ODBC就是添加到數據源,JDBC就是要寫JDBC驅動,或者使用mybatis之類的解決方案
添加回答
舉報