Web全棧應用之旅-啓程篇

1、Web應用技術棧

在開發Web應用時,一般會使用到如下技術棧:
圖片描述
對應這些技術棧都已有相應的開源產品,能夠根據項目須要選擇適合的產品。前端

2、開源產品選型原則

開源產品選型主要考慮:java

  1. 適合本項目,如知足功能須要,開發者已有的技能儲備等等。
  2. 活躍度高,發現問題開發團隊能及時解決。
  3. 已經有很多項目的成功經驗。

3、iTracker產品選型

iTracker是一個開源任務管理系統,目的是經過實際項目來使用和驗證以上技術棧, 同時也是一個培訓類Demo項目,你能夠經過follow Web應用全棧之旅的系列文章一塊兒參與學習。
iTracker選型以下:
圖片描述spring

4、前端選型

  1. 前端框架Vue.js,理由是:輕量,熱度高,熱度從慕課網培訓課程Vue和Angular的購買人數就能夠看出來。
  2. UI組件選擇餓了麼的Element UI,理由是:一次安裝使用成功,功可以用。
  3. 編輯器

編輯器選型主要考慮因素有:
1)是否支持直接拷貝富文本的中的圖片或者截屏後粘貼,能拷貝Word中的圖片和visio圖最佳。但能拷貝visio圖粘貼後不失真一般是收費富文本編輯器才具有的能力。
2)是否支持編程語言高亮,例如按Java,C++語言高亮
3)是否支持數學公式等等
所以選擇了兩款富文本編輯器:
1)wangEditor,支持截屏粘貼,當作Bug跟蹤系統時這個功能特別有用。
2)Editor.md,支持編程語言高亮,支持數據公式。數據庫

  1. 圖表

圖表組件不少,夠用就好。
1)Echart,用於統計類圖表。
2)d3,功能強大,彩虹圖,柱狀圖,在作調用鏈跟蹤類的應用中可使用。編程

5、後端選型

  1. Web框架

沒有任何疑議選擇Spring。json

  1. 工具包

在實際開發過程當中可能用到不少工具包,例如支持後臺分頁的工具包PageHelper,例如雖然已有fastJSON來作json文本和對象的轉換,但有的場景會用到Gson,具體根據實際須要選擇。後端

  1. 配置中心

雖然大多數配置均可以在spring的yml配置文件中完成,但當配置參數愈來愈多,又要區分不一樣環境時,經過配置中心來配置更方便一些,這裏選擇了攜程的Apollo配置中心。緩存

  1. 緩存

支持數據緩存, 分佈式緩存,能夠用來管理分佈式session,Rdeis足以勝任。前端框架

  1. 消息隊列

幾個知名消息隊列工具,kafka,RocketMQ,RabbitMQ,在沒有確切的場景需求時,先簡單選擇一個開始吧。微信

  1. 搜索

因爲數據庫的模糊查詢效率低,同時也不可能不斷增長一個表的索引字段來知足查詢要求,所以一個搜索引擎是必要的,Elasticsearch能夠知足要求。

6、數據庫訪問選型

JPA代碼寫起來簡單,可是對於複雜查詢有些力不從心,因此仍是帶上mybatis吧。

7、數據庫選型

MySQL。

8、結語

學習在任何收開始都不晚,感興趣的話,一塊兒開始Web全棧之旅吧!

end.


<font color="#F4B183">站點:</font> http://javashizhan.com/


<font color="#F4B183">微信公衆號:</font>
圖片描述


<font color="#F4B183">加入知識星球,參與討論,更多實戰代碼分享! </font>
https://t.zsxq.com/RNzfi2j
圖片描述

相關文章
相關標籤/搜索