慕課網高併發秒殺API之業務分析與DAO層

項目基於SpringMVC+Spring+MyBatis實現高併發秒殺API

課程主要內容

SpringMVC+Spring+MyBatis使用與整合

秒殺類系統需求理解和實現

常用技術解決高併發問題(java web 以及前端這些常用的技術)


秒殺業務場景具有典型“事務”特性

秒殺/紅包類需求越來越常見

面試常問問題


可以從課程中學到什麼?

框架的使用與整合技巧

秒殺分析過程和優化思路


相關技術介紹

MySQL(表設計,SQL技巧,事務和行級鎖)

MyBatis(Dao層設計與開發,MyBatis合理使用,MyBatis與Spring的整合)

Spring(Spring IOC整合Service,聲明式事務運用)

SpringMVC(Restful接口設計和使用,框架運作流程,Controller開發技巧)

前端(交互設計,Bootstrap,jQuery)

高併發(高併發點和高併發分析,優化思路並實現)


基於Maven創建項目

官方配置文件地址


秒殺業務分析

秒殺系統業務流程


秒殺業務的核心 -> 庫存的處理

什麼是購買行爲

MySQL實現秒殺難點分析

難點問題-“競爭”

MySQL(涉及到的技術有事務和行級鎖)

秒殺的難點是如何去高效的處理競爭?


實現秒殺的哪些功能?

秒殺接口暴露

執行秒殺

相關查詢


數據庫設計和編碼

DAO層實體和接口編碼

 

基於MyBatis實現DAO


MyBatis整合Spring

整合目標

更少的編碼

更少的配置

足夠的靈活性

整合過程

1 配置數據庫相關參數
2 數據庫連接池:配置連接池屬性 c3p0連接池的私有屬性 關閉理解後不自動commit 獲取連接超時時間 當獲取連接失敗重試次數
3 配置sqlsessionfactory對象:<bean> 注入數據庫連接池 配置mybatis全局配置文件 掃描entity包使用別名 掃描sql配置文件 
4 配置掃描dao接口包,動態實現dao接口,注入到spring容器中:注入sqlsessionfactory 給出需要掃描dao接口包

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章