原创 C++ mysql數據庫操作api接口的封裝

目錄一:關鍵接口說明二:具體實現三:接口測試四:後續 一:關鍵接口說明 一般預處理流程都是,連接數據庫–>預處理–>綁定查詢參數–>執行查詢–>獲取查詢結果。 故api封裝之後有如下幾個關鍵的接口: 1:bool connect(

原创 ES6新特性學習與分析

目錄letconst解構表達式字符串拓展函數優化對象優化數組新增方法Promise異步編排模塊化 let var 聲明的變量往往會越域 let 聲明的變量有嚴格局部作用域 { var a = 1 let b = 2 } c

原创 C++ 基於mysql原生api數據庫連接池的實現

目錄一:思路二:實現三:後續 一:思路 1:連接池中至少保存有最小連接數的數據庫連接。當連接數達到最大值的時候,無法再創建新的連接,如果需要獲取一個連接,則需要等待相對應的時間。 2:連接池中數據庫連接接口基於上篇文章封裝的Con

原创 分佈式事務的分析與解決方案的總結

目錄什麼是事務什麼是分佈式事務最終一致性分佈式事務詳解分佈式事務解決方案TCC與XA/JTA對比 什麼是事務 事務由單獨單元的一個或者多個SQL語句組成,在這個單元中,每個語句相互依賴,而整個單元作爲一個不可分割的整體。如果單元中

原创 google序列化協議protobuf底層源碼分析

目錄序列化/反序列化序列化協議需要考慮什麼Java自帶的序列化類Protobuf序列化Protobuf特性Protobuf核心代碼解析 序列化/反序列化 序列化 將對象序列化爲二進制數據【字節數組】,一般也將序列化成爲編碼,主要

原创 C++11 mysql數據庫從原生api的封裝到ORM庫的實現 [高仿通用mapper接口]

目錄一:mysql原生api的封裝和連接池的實現二:ORM的實現1:封裝初衷2:封裝思路3:測試結果三:總結四:項目地址 一:mysql原生api的封裝和連接池的實現 ORM封裝的第一步,需要對mysql原生api進行封裝,讓之後

原创 C++11 設計模式--模板方法模擬實現Java Spring AOP

目錄一:背景二:具體實現三:應用 一:背景 當進行數據庫更新的時候,有以下場景需要處理: 1:業務方法執行開始的時候,需要拿到數據庫連接,然後開啓事務。 2:若業務在某個環節拋異常,爲了數據庫數據的而一致性,需要回滾事務。3:若業

原创 C++ SQL語句構建器的實現[與mybatis3使用方式一致]

目錄一:簡介二:實現三:使用示例 一:簡介 1:有時候我們需要動態生成SQL語句,我們當然可以在代碼中直接寫出那條SQL語句,然而令人頭疼的是對於SQL語句的各種換行,格式化,逗號,AND和OR的處理,都是很容易出錯的,對此,需要

原创 wsl環境下搭建QT12.6開發環境[QT無界面命令行安裝]

wsl環境下qt12.6的安裝 qt512-ppa源地址 命令行安裝 sudo add-apt-repository ppa:beineri/opt-qt-5.12.6-bionic sudo apt-get update sud

原创 c++ 基於mysql原生api數據庫連接池的實現

目錄一:思路二:實現三:後續 一:思路 1:連接池中至少保存有最小連接數的數據庫連接。當連接數達到最大值的時候,無法再創建新的連接,如果需要獲取一個連接,則需要等待相對應的時間。 2:連接池中數據庫連接接口基於上篇文章封裝的Con

原创 c++ mysql數據庫操作api接口的封裝

目錄一:關鍵接口說明二:具體實現三:接口測試四:後續 一:關鍵接口說明 一般預處理流程都是,連接數據庫–>預處理–>綁定查詢參數–>執行查詢–>獲取查詢結果。 故api封裝之後有如下幾個關鍵的接口: 1:bool connect(