微信小程序后端开发(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层,层次关系如下图示:
三、部署到服务器
这部分需要做的工作是:
-
- 选择合适的方式打包项目
- 在服务器环境配置好的前提下,将项目上传并运行
该项目中,是给微信小程序提高后端接口,而微信小程序只支持请求https访问,所以我需要配置ssl证书(阿里云会提供免费证书),配置的过程一波三折,因此部署过程稍微有点难以描述,我特地拎出来写了下面这篇博客:
小程序后端项目【Springboot框架】部署到阿里云服务器【支持https访问】,有需要可以移步~
四、易错点总结
-
- Springboot框架中大多数配置都配置好了,用起来不像SpingMVC那么复杂,易上手。使用时切记不能忽略的是注解,我觉得它们是省略配置的关键吧。
- mapper文件中的SQL语法编写时,需要注意很多,整理了一些知识点:
-
- Springboot运行时使用内嵌tomcat,因此端口号需要注意,不要和外部tomcat环境的端口号有所冲突了。
~最后,完结,撒花*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。