河师大拼团项目总结2.0

微信小程序开发

1、微信官方开发文档

https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html

2、应用列表

https://dev.dcloud.net.cn/app/index?type=1

3、小程序

https://mp.weixin.qq.com/wxamp/user/manage?action=index&use_role=1&token=1507699215&lang=zh_CN

bug

1、在微信开发者工具里运行微信小程序出现[ app.json 文件内容错误] (app.json: app.json 未找到)

解决方案:

https://blog.csdn.net/fallsTheDust/article/details/119822421

在project.config.json添加"miniprogramRoot": "./unpackage/dist/dev/mp-weixin"

在这里插入图片描述

2、http://localhost:8000 不在以下 request 合法域名列表中

https://www.cnblogs.com/tu-0718/p/9690021.html

解决方案:

在这里插入图片描述

小程序默认不会勾选最后一个不校验合法域名的选框,所以这里需要我们手动勾选不校验合法域名选框

注:一般建议在开发环境下勾选不校验合法域名选项,但线上正式环境最好不勾选不校验合法域名选框

3、点击统计页面显示服务器异常

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-svXPIJkz-1634984691048)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211021210853754.png)]

查看后端日志报空指针异常

通过dbug OrdersServiceImpl 定位到 ordersMapper层中的Sql语句查询出现问题

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2bZAJJ57-1634984691053)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211021202816554.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-25xbRSmx-1634984691055)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211021203614448.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-evbQgZVd-1634984691056)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020224056394.png)]

拼团订单查出id为空的数据,导致空指针异常

SELECT g.id id, g.title title, g.create_time create_time, g.price*Count(o.group_booking_id) 
as allMoney, Count(o.group_booking_id) count from orders o LEFT join group_booking g on o.group_booking_id 
= g.id WHERE o.is_payment = '1' GROUP BY o.group_booking_id LIMIT 10 ;

分析Sql语句为左连接,以orders(订单)表为主表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4LwMPor1-1634984691056)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211021203802816.png)]

以group_booking(拼团)表为副表

在这里插入图片描述

当orders表中所有满足is_payment=1的订单都会在结果中查询出来。但是由于group_booking(拼团)表中id为15的拼团被删除了,所以导致查询的结果中出现了第一行id为null的空数据(应该是id为15的拼团,却被删除了),导致了空指针异常,以致于使小程序的最终统计界面出现了服务器异常问题。

错误解决:

一开始我将这个 left join 改为了 right join:

这样就以group_booking(拼团表)为主表,orders(订单)为副表。

在这里插入图片描述

这样确实是暂时解决了问题,只查询了id=17的拼团,但是经过仔细分析后,发现右连接却是治标不治本,为什么,现在开始分析:

右连接是以拼团表为主表,订单表为副表,当订单表中有多个条件满足要求的时候,在最终的结果中只会显示一条数据。

这个以orders订单为主表,拼团表为副表,进行左查询,拼团对订单表为一对多,如果右连接,当订单表中有多个满足条件,在结果中只能查出一个,所以采用左连接。

正确解决:

将group_booking_id :15 的订单删除

在这里插入图片描述

成功查询出正常拼团数据

在这里插入图片描述

小程序统计页面终于正常显示出数据
在这里插入图片描述

4、Caused by: java.net.BindException: Address already in use: bind

在这里插入图片描述

解决:

1、cmd命令模式下输入netstat -ano,然后找到占用端口的那个进程 如下图…

在这里插入图片描述

2、PID号为 31852 的进程占用着8000端口,打开任务管理器查看详细信息,查找PID号为 31852 进程,点击结束任务即可

( 也可以直接 使用命令 taskkill /pid 31852 /f )

在这里插入图片描述

项目成功跑起

git

git stash 用法总结和注意点

https://www.cnblogs.com/zndxall/archive/2018/09/04/9586088.html

git教程(开发中使用)

https://blog.csdn.net/D_ps19990501/article/details/119272740

git status

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5TpTqg3n-1634984691066)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222039906.png)]

git stash list			:查看stash了哪些存储

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7UezpGvS-1634984691067)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222052189.png)]

git stash save "名字"	  :执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Faw6bGNA-1634984691067)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222101805.png)]

git pull origin devHu	:(拉取远程仓库代码)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nA2A7QTb-1634984691068)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222119484.png)]

git stash pop			:取出暂存区代码并删除暂存区  执行完这一步最好在本地再跑一下项目,看有没有问题

命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fm7XcXs9-1634984691068)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222143287.png)]

git add .

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BaPZ5DNU-1634984691069)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222155309.png)]

git commit -m ""  		:提交代码
有时改动量大提交不上,并提示已是最新代码
这时就执行git commit -am "备注信息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4ukdjPZZ-1634984691069)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222207681.png)]

git push				:推送到远程仓库
如果是第一次推送,推送同时要创建远程分支
git push origin HEAD:[远程仓库开发分支名]推送到远程仓库
git push upstream HEAD:[中央仓库开发分支名]推送到中央仓库
稳妥起见之后也建议用git push origin [远程仓库开发分支]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z58xdlqg-1634984691070)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222217494.png)]

git push origin HEAD:devHu

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e0uZM6B3-1634984691070)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211020222234289.png)]

最终上传到我的代码分支

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ypcUOdow-1634984691070)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211021214052862.png)]

请求与主代码合并

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XNPGehRH-1634984691071)(C:\Users\Hasee\AppData\Roaming\Typora\typora-user-images\image-20211021214149246.png)]

部署

  1. docker安装及docker常用命令
  2. docker 构建git+maven+jdk8的centos7环境,实现轻量级的springboot项目的自动化部署
  3. docker安装nginx规范所有项目的反向代理(一个项目一个反向代理的conf配置文件)
  4. docker 构建centos7+git+nvm镜像,实现自主切换node版本统一部署前端vue项目
  5. 基于Docker使用Nginx https://blog.csdn.net/weixin_44932487/article/details/117193191?spm=1001.2014.3001.5501

Guess you like

Origin blog.csdn.net/qq_45696377/article/details/120924281