流程開發總結

1.前段框架Extjsjava

Extjs:mvvm思想: view+controller+model的設計思想;各類控件的使用和函數的編寫;extjs開發中bug的處理。mysql

Ajax通訊,返回json數據sql

2.後端服務框架數據庫

2.1探針收集,記錄前段頁面用戶操做的各類信息。探針收集使用quartz定時任務。json

其中用戶的信息使用bitmap數據模型進行存儲,做爲BI系統的數據源。後端

2.2使用mysql數據庫(主從同步,讀寫分離)數組

使用Druid數據庫鏈接池: 能夠經過讀取多個配置文件 建立多個鏈接對象放入鏈接池內。服務器

getRandomReadConnection()--讀鏈接mybatis

getRandomWriteConnection()--寫鏈接框架

//以寫鏈接對象的獲取爲例

1.獲取DataSource[]數據源數組( 根據DruidDataSourceFactory工廠類 配置文件,能夠獲得數據源數組 )

2.建立隨機數, dataSource[iFeed % writeDataSource.length].getConnection()獲取 writeConnect

2.3查詢數據庫數據

使用DbUtils進行查詢數據庫,在DbUtils的基礎上封裝一層,使用自定義類  ResultInfo<> 

ResultInfo屬性:businessCode : 業務代碼;resultSet:數據集;description:描述信息; count:數據集的數目。

返回前臺ResultInfo對象,Extjs經過json轉爲對象,填充view頁面數據

其中sql本身編寫,未使用mybatis進行封裝

2.4Controller層

1.使用Servlet3.0 註解進行 url和servlet的映射   @WebServlet 

2.BaseServlet:  每一個servlet統一繼承BaseSevelt, Base 繼承 HttpSevlet ,BaseSerlvet中重寫service()方法,service()經過java反射進行具體的業務實現。同時BaseServlet中進行  權限控制;防XSS; Session信息判斷;操做審計等統一操做。

3.自定義註解@NeedAuthentication 和 @NeedAudit  進行權限控制

4.HttpServlet的生命週期:httpServ;et包含 inti() destroy() 和 service()方法。其中 在服務器裝入Servlet時 執行inti()方法,在Servlet的生命週期中,僅執行一次init()方法,咱們在inti()使用把servlet的class信息放在map中,便於後期使用;service()方法是Servlet的核心,每當一個客戶請求一個HttpServelt對象是,service()方法都須要被調用;當服務器中止或者卸載Servlet時執行 destroy()方法。

2.5Service業務層

每一個具體的Service繼承BaseService

BaseService中主要進行用戶操做記錄

1.這裏主要說下 事物處理:目前都直接在業務層 經過

//開啓事物

connection.setAutoCommit(false);
connection.setReadOnly(false);

//事物回滾

connection.rollback();

//提交事物

connection.commit();

來進行事物處理, 目前沒有使用Spring事務管理

3.1idea編輯器

4.1maven項目

5.1Git版本控制

6.1Linxu操做系統

7.1Tomcat

8.1jenkins項目發佈工具

相關文章
相關標籤/搜索