前言:
因為是第一次真正接觸后端開發,從編碼到部署服務器到上線,所以做個筆記,也供和我一樣的開發小白一些參考。
一、前期工作:開發環境與工具:
1. 編程語言:Java #筆者還沒學PHP,只想到了Java.
2. (后端)開發IDE:Eclipse #看網上很多大佬都是用的IntelliJ IDEA, 有空了解。
3. 開發框架:Springboot + Mybatis #都是我第一次接觸orz..
4. 服務器:阿里雲學生服務器 順便在阿里雲上把域名買了
二、編碼與本地測試!
這部分都是按照課程《SpringBoot+MyBatis搭建迷你小程序》邊學邊做的,可以自己去學。
這里我按照課程目錄,簡單總結記錄了一下流程:
1. Springboot框架搭建
有關Springboot框架的學習,搭建可以參考這篇博客 構建微服務:Spring boot 入門篇 博主純潔的微笑寫了一系列的springboot文章,寫得很棒!構建項目里面也有講到,跟着里面的步驟做就好了。項目創建好后,導入Eclipse,下面看一下項目結構。
Spring Boot的基礎結構共三個文件:
src/main/java 程序開發以及主程序入口
src/main/resources 配置文件
src/test/java 測試程序
pom.xml 配置依賴文件
2. 明確功能點,設計實體類與數據庫
數據庫用的MySQL,所以裝了SQLyog,這里安裝還踩坑了,后來終於連接上了;
實體類的設計就通過構建E-R圖的方式來確定問題中設計的實體,然后數據庫一般就對照着實體類的屬性設計就可以了。
3. 配置配置文件
-
-
- pom.xml中配置各種依賴包,然后運行的時候會自動加載到項目中Maven Dependencies文件夾下;可以在其中查看一些包的版本。
- mybatis-config.xml中的配置是設置mybatis的一些屬性。
- 配置dataSource和sessionFactory
-
4. 編寫Dao層接口,及對應的Mapper文件
-
-
- Dao層接口即數據接口層,是根據數據庫表的設計提供最基本的實體屬性的CRUD操作(增刪查改),Dao是最直接最底層的數據層,我覺得比較強調封裝性,所以傳入的參數和返回值的類型的選擇需要慎重。
- Mapper層,是xml文件層,是Dao層接口的具體實現,MyBatis持久層框架中,需要針對Dao接口中的每一個類編寫對應的xml文件,並在其中實現接口,即編寫SQL語句,一般把xml文件統一放在一個mapper文件夾中。
-
5. 編寫Service層接口及接口實現
Service層是較為具體的功能實現了,利用Dao層的接口來包裝具體的功能點。
6. 編寫web層(Controller層)業務接口Controller
Controller層就是我們的業務層的,編寫的就是對前端開放供其調用的接口,所以接口就是完全對接前端功能請求的,一一對應的。
7. 測試
-
-
- 在每層的編碼完成后,都應該做單元測試;
- 接口寫好后,本地測試,可以下載Postman進行測試。
-
8. 項目架構說明
服務器端項目采用分層結構,一共是四大層:Entity層 --> Dao層 --> Service層 --> web層,層次關系如下圖示:
三、部署到服務器
這部分需要做的工作是:
-
- 選擇合適的方式打包項目
- 在服務器環境配置好的前提下,將項目上傳並運行
該項目中,是給微信小程序提高后端接口,而微信小程序只支持請求https訪問,所以我需要配置ssl證書(阿里雲會提供免費證書),配置的過程一波三折,因此部署過程稍微有點難以描述,我特地拎出來寫了下面這篇博客:
小程序后端項目【Springboot框架】部署到阿里雲服務器【支持https訪問】,有需要可以移步~
四、易錯點總結
-
- Springboot框架中大多數配置都配置好了,用起來不像SpingMVC那么復雜,易上手。使用時切記不能忽略的是注解,我覺得它們是省略配置的關鍵吧。
- mapper文件中的SQL語法編寫時,需要注意很多,整理了一些知識點:
-
- Springboot運行時使用內嵌tomcat,因此端口號需要注意,不要和外部tomcat環境的端口號有所沖突了。
~最后,完結,撒花*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。