微信小程序后端開發(Java)筆記【Springboot+Mybatis】


 前言:

因為是第一次真正接觸后端開發,從編碼到部署服務器到上線,所以做個筆記,也供和我一樣的開發小白一些參考。

一、前期工作:開發環境與工具:

  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層,層次關系如下圖示:

 

三、部署到服務器

這部分需要做的工作是:

    1. 選擇合適的方式打包項目
    2. 在服務器環境配置好的前提下,將項目上傳並運行

該項目中,是給微信小程序提高后端接口,而微信小程序只支持請求https訪問,所以我需要配置ssl證書(阿里雲會提供免費證書),配置的過程一波三折,因此部署過程稍微有點難以描述,我特地拎出來寫了下面這篇博客:

小程序后端項目【Springboot框架】部署到阿里雲服務器【支持https訪問】,有需要可以移步~

四、易錯點總結

    • Springboot運行時使用內嵌tomcat,因此端口號需要注意,不要和外部tomcat環境的端口號有所沖突了。

~最后,完結,撒花*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM