kotlin和vertx和mongo寫的一個服務器驗證登陸功能(很簡陋)
阿新 • • 發佈:2018-07-26
技術分享 .com round 持久 http服務 info rda use 信息
包結構長這個樣子:
server包:(服務器相關配置)
HttpServer:用ver.x創建了一個http服務器,把接收到的req請求傳入RPCRequest中;
RPCRequest:解析請求body內容,把信息保存為M(類名) A(方法名) P(參數),同時還擁有invoke()方法,根據m、a、p的數據用反射調用方法。
RPCResponse:沒寫,用來保存響應信息的。
controller包:(將所有需要被遠程調用的方法保存到內容中,加快調用時遍歷查詢方法的響應速度)
MethodManager:裏面聲明一個HashMap,value是KFunction<*>保存所有被@RPC1註解的方法,同時有addAllMethod()方法,用來保存當前類所有帶@RPC1註解的方法。
ControllerManager:用HashMap保存所有Controller類,value是KClass<*>,init中需要手動put添加controller類。
Service包:(提供業務方法,供調用)
LoginController:裏面有Login()方法,當有登錄驗證請求時,被調用。
Mongo包:(數據持久層,與數據庫打交道,應該寫成Dao層的)
UserDao:用戶集合的數據庫操作。
Po包:(實體類)
User:將數據庫查詢出來的信息保存成User實體。
kotlin和vertx和mongo寫的一個服務器驗證登陸功能(很簡陋)