Java通過將近20年的發展壯大,框架體系已經豐滿俱全;從前端到後臺到數據庫,從智能終端到大數據都能看到Java的身影,我的感受作後臺進要求愈來愈高,愈來愈難。html
爲何如今Java程序員愈來愈難作,一是Java框架體系衆多,學習成本提升,每個細分問題又有不少可選方案;二是通過移動互聯網的洗禮,之前單機單線程那一套行不通了,如今面臨的是高併發低延遲,你可能要掌握緩存、分佈式、集羣、微服務等;物聯網時代漸漸到來,將IT行業技能要求推向一個新高度,你的產品要提供7x24小時不間斷服務,就像家裏的自來水管,打開閥門水不間斷流出來。面對成千上萬的智能終端上傳的海量數據,從數據壓縮上傳、優化存儲、管理、備份防災、分析利用等方面,要掌握的技能還不少。前端
因此我把這些年收集的資源共享給你們。大體分爲Java基礎框架,網絡通信相關框架,論文算法類、工具類型框架。java
1、Java基礎框架
- spring Framework
對於java讀者來講spring再熟悉不過了,它就像一個擁有無限插孔的插線板,大部分框架均可以集成到spring容器當中即插即用,固然魔力不只於此。
- ORM Framework Hibernate vs mybatis
Hibernate和mybatis都是目前最流行的ORM框架,各有優缺,仁者見仁。
2、網絡通信相關框架
- dubbo分佈式服務框架
- zookeeper分佈式應用程序協調服務
- netty網絡應用通信框架
- MQ消息隊列
知名的消息隊列框架有ActiveMQ、RabbitMQ、Kafka,RocketMQ這些,根據需求場景選擇不一樣的消息隊列框架。
- 序列化框架protobuf
protobuf是google 的一種數據交換的格式,相似json和xml,它獨立於語言,獨立於平臺。做爲一種效率和兼容性都很優秀的二進制數據傳輸格式,能夠用於諸如網絡傳輸、配置文件、數據存儲等諸多領域。
框架部分暫時介紹這麼多,各個框架間可靈活組合使用;之因此整理出來分享給你們,有如下幾個緣由:git
- 它們都是開源的,而且獲得普遍使用和驗證
- 它們是解決某個問題的最佳選擇
- 足夠好的靈活性、擴展性讓你輕鬆應對需求迭代
- 它們都是基礎框架,基礎意味着重要,就比如房子的穩固程度取決於地基是否穩固
還有嗎?固然有,程序員
3、算法類
4、工具類
工具類不詳細羅列網址了,能夠本身去搜索一下。github
- mvn倉庫:http://mvnrepository.com/
- Json庫:fastjson / Gson
- Collections庫:Guava
- Html內容匹配:Jsoup
- Http Client:Apache HttpClient
- JDBC Pools: Commons DBCP / Druid
- 模擬測試:Mockito
- 代碼簡化:lombok
- 圖片處理:Thumbnails
- Mail:JavaMail API (compat)
- 定時器:Quartz
- 權限控制:Shiro / spring Security
- 長鏈接:spring-websocket
- 即時通信:Openfire
- NoSQL:Jedis / spring-data-redis / spring-data-mongoDB
本次Java進階資料彙總整理就到這裏,歡迎你們留言補充。web
你也能夠關注個人微信公衆號『ITNotes』, 一塊兒交流學習 。
redis