一、Spring Boot 系列誕生原因
上學那會主要學的是 Java 和 .Net 兩種語言,當時對於語言分類這事兒沒什么概念,恰好在2009年畢業那會陰差陽錯的先找到了 .Net 的工作,此后就開始了漫長的 .Net 編程之旅,說實話最初的“編程思想”的形成和確立都是在頭幾年做 .Net 的時候慢慢培養起來的。
后來在2015年之后就開啟了“百花齊放”的模式,那時候 Nodejs、Vue、Golang 在程序界開始暫露頭腳並逐漸流行,而作為類游戲公司出身的我和我的老領導,在新系統開發中大量使用了大量的新技術元素,那時候 Nodejs、Golang 作為我們首選的主要的開發語言,進而取代了之前一直使用的 .Net,這個經歷對我的影響非常大,我會開始嘗試更多的開發語言和框架,甚至到后來的手機開發也開始越做越順手,當然手機的框架我們也用了很多,踩了很多坑,從最開始的 DCloud 到 Xamarin 再到 React Native,我們是一邊實踐一邊用於生產壞境,所幸由於領導的體諒和我們的努力,讓我們能很順利的走過那段“艱難”歲月,一直到后來的技術逐漸穩定。
說了辣么多,和我們本節的主題“為什么會誕生 Spring Boot 系列文章”有毛關系?
客觀莫慌,待老衲如實道來。
是這樣子,雖然我們這一路似乎走的還算平穩,那為什么導致我后來用 Java 和 Spring Boot 的誕生呢?原因其實也挺簡單,新技術的使用會帶來幾個問題?
- 新技術的使用增加了人員招聘的成本,通常招不到更多的人(在業務高速發展的階段會影響項目的進度);
- 新技術使用成本很高,通常有更多的坑和更少的解決方案;
- 新技術可控性更差,有些問題可能是致命性,存在不能修復的風險;
所以經過這些事之后,讓我明白一件事,那就是“順勢而為”,Java 作為國內最流行的語言,處理 BAT 還有很多名不見經傳的大小中公司都在使用,而且有很成熟的解決方案和人員優勢,我們干嘛要做吃力不討好的事情。當然這也不是教育我們不要嘗試新的事物,而是要循序漸進深入思考的使用和應用新技術,要明白所有的事情不是一蹴而就的,凡事都有一個過程,新技術是一定要學的,但用於生產環境一定要結合自身情況去深入思考。當然我更鼓勵大家去學習新技術,但不要迷戀新技術,凡事都與利弊的,要做一件事情一定要深入思考。
有了這個想法之后,要很好的使用 Java,Spring Boot 當時逃不掉了,這是此系列誕生主要的原因,當然學 Spring Boot 可以自己悶頭去學也是沒有問題的,那 Spring Boot 系列誕生的原因還有那些呢?
- 會用一種技術和給別人講明白一種技術是兩碼事情,想通過給別讓講明白這件事,驅動自己更深層次的理解和探尋這門技術;
- 照本宣科的學習一種技術,是一件簡單事情,但要理解技術內在的聯系,把你理解的技術轉述給別人,引導別人從淺到深平滑的思維過度,以及按照某種規律,建立起更加牢固的記憶和更容易理解的文章,是一件非常不易的事兒,而要搞懂這種內在的聯系(或者說是內在的規律),首先你要把這項技術理解的非常深刻才行,這是一種良性互動的驅動力,提供優質的文章=>積極的反饋=>改善,提供更優質的文章=>更積極的反饋;
- 大部分類似的文章比較舊,更新不夠及時;
- 大部分類似的文章千篇一律,人雲亦雲,沒有自己的獨立思考與實踐;
- 大部分類似的文章在功能使用上過於簡單,想要深層次的挖掘一些更本質、更不一樣的東西;
說了這么多那就開始一邊實踐,一邊總結經驗來匯報給各位看官老爺嘍。
二、Spring Boot 系列目錄
Spring Boot (三)模板引擎FreeMarker集成
Spring Boot (四)模板引擎Thymeleaf集成
Spring Boot (五)Spring Data JPA 操作 MySQL 8
Spring Boot(六)集成 MyBatis 操作 MySQL 8
Spring Boot (七)MyBatis代碼自動生成和輔助插件
Spring Boot (八)MyBatis + Docker + MongoDB 4.x
Spring Boot(九)Swagger2自動生成接口文檔和Mock模擬數據
Spring Boot(十)Logback和Log4j2集成與日志發展史
Spring Boot(十一)Redis集成從Docker安裝到分布式Session共享
以上幾乎包含了 Spring Boot 使用中,要涉及的方方面面了,后期根據工作中使用的情況,可能會做其他補充。
三、特別鳴謝
當然以上這些實踐總結,不是憑空想出來的,一定參考了很多技術文章加上我自己的思考產生的心得體會,不保證一定是對的,但都是我的深思熟慮之后的所得所想,這里重點感謝幾位老哥的資料:
純潔的微笑:http://www.ityouknow.com/spring-boot.html
battcn:https://blog.battcn.com/categories/SpringBoot/
程序猿DD:http://blog.didispace.com/categories/Spring-Boot/
最后,推薦給大家一個非常不錯的付費課程:《精通 Spring Boot 42 講》
關注作者二維碼,查看更多動態: