本人新手,想編一個小軟體,有一個服務器程式,一個客戶端程式。服務器存放資料庫資料。他們之間的通信用ServerSocket和ClientSocket,但是發現通信的手段貌似只有ServerSocket->Socket->SendText(),比如我在客戶端登陸,把用戶名和密碼通過這個ClientSocket->Socket->SendText()傳給服務器,服務器在自己的資料庫中查詢證實存在用戶,回傳資訊,客戶端登陸成功。
存在的問題:
1.如何做到身份驗證,即如果有很多用戶都登陸到服務器上的話,同時要從服務器查詢資訊,服務器如何識別是本次查詢是哪臺客戶端發起的?有如何能做到只對該客戶端傳回資訊?
2。如果軟體功能較為復雜,需要傳輸的資訊很多很雜,只用SendText()好像很復雜很復雜,如何能簡化?是否有更好的方式?
uj5u.com熱心網友回復:
如果是局域網小軟體可以不使用三層,而是用資料庫直連uj5u.com熱心網友回復:
unidac直接連接吧
uj5u.com熱心網友回復:
unidac要錢啊,怎么破
uj5u.com熱心網友回復:
遠程呼叫RPC,辦法很多,webservice就是一個辦法。但是鏈接資料庫還是要你自己搞,一般Oracle用occi,mysql用MySQL++,SQLServer用ado,PostgreSQL用libpqxx。uj5u.com熱心網友回復:
用了sqlserver 和 ado,貌似還不錯uj5u.com熱心網友回復:
中間少了一個自己開發的三層自然會不錯,否則的話是:資料庫->ADO->中間服務器->網路->你的C/S程式,自己開發的中間服務器問題多多,遠遠不及名牌大廠的資料庫和ADO了uj5u.com熱心網友回復:
選用TCP ,C端登錄成功就不再斷開直到任務完成。每次連接成功都有一個socket,S端就從socket識別各個C端。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/130839.html
標籤:數據庫及相關技術
上一篇:cin cout
下一篇:卡布列克數
