前言(一点废话)
都2022年了,不会还有人在学谷粒学院吧(doge),最近做毕设,学完了ssm,决定用谷粒学院做项目参考,发现现在计算机行业各种贩卖焦虑,什么Java烂大街了,学Java找不到工作,Java太卷之类的,也不知道学完这个是否真的都找不到一份Java工作,果然躺平才是唯一出路吗,哈哈,开个玩笑;总之,2022年还在学谷粒学院的人就是本人了,因为使用的是新版的springboot,而该项目是2020年的了,肉眼可见的会遇到很多问题,我会在这篇帖子里详细总结一下我遇到的问题,给出解决思路和方法


day02-08 Swagger2版本与新版SpringBoot不匹配

我使用的是springboot2.6.5,而Maven仓库中Swagger目前只更新到了2020版,我推荐直接使用Postman来进行测试,也可参照下面这篇文章来更改配置:
WebMvcPatternsRequestConditionWrapper.getPatterns NullPointerException 启动失败.
主要原因是Spring2.6之后path解析策略改变了,与Swagger解析策略不符合
,虽然更改properties的配置可以设置Spring的解析策略,但是会降低原Spring的解析效率,所以我选择废弃Swagger的使用,Postman更方便一些,下载Postman,输入删除的URL,成功运行显示删除数据成功。


day05-03 使用vue3,配置后端端口转发的跨域问题

因为使用的是vue3,没找到原视频中config文件夹下的index.js文件,在端口号配置这找了好一会,这里一共出现了两个错误:
1、请求到后端的端口地址不正确,点击login时,network下的请求的端口号一直是9528,这就意味着配置的端口文件不对
2、在更改了上面问题后,浏览器报错如下,
Access to XMLHttpRequest at 'http://localhost:8001/comservice/user/login' from origin 'http://localhost:9528' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
感觉大致意思是不允许进行跨域转发,需要更改请求头的信息

1、config的index.js的对应配置文件是.denv.development,可能改成了对应的开发环境下的路径了吧,将

VUE_APP_BASE_API = '/dev-api'

改为

VUE_APP_BASE_API = 'http://localhost:8001/'

此时浏览器请求的地址正确

2、可以看到端口变成了8001,但浏览器又报错如下
仔细检查代码发现,我的Controller类上少添加了@CrossOrigin注解,添加该注解后解决问题,在我查阅资料的时候发现,很多文章都是在vue.config.js(vue2中是config/index.js)文件中修改devServer中proxy等配置来实现代理配置,但是从步骤一就可以看出,当更改VUE_APP_BASE_API,Vue3它自动实现了代理请求的转发功能,说明不再需要这样配置了,下面的配置是原来改的,后来发现注释掉也不影响原来的请求方式。

devServer: {port: port,open: true,overlay: {warnings: false,errors: false},/* proxy: {'/api': {target: 'http://localhost:8001', // 接口的域名// secure: false,  // 如果是https接口,需要配置这个参数changeOrigin: true, // 如果接口跨域,需要进行这个参数配置pathRewrite: {'^/api': ''}        }}, */before: require('./mock/mock-server.js')},

点击login,页面成功跳转


day05-10 点击查询按钮,不输出查询结果

差一点因为这个问题自闭了,这是个比较低级但是很难排查出的错误,因为无论前端还是后端都没有明显的报错,但是前端传递的JSON数据就是封装不到后端的@RequestBody注解对应的对象中

测试了好久,一直以为是前端的错误,这里也建议大家找这样隐性的Bug的时候,使用postman或者swagger测试一下到底是前端还是后端的错误,这样排错也方便一些;

我的问题是,@RequestBody注解引用的是Swagger2的类中的,可能当时一时疏忽,前端传递的JSON数据应该是由Sping来进行封装的,将引用的注解包改为Sping对应的包即可。

这里列出几个可能出现的错误点(都是泪,全都排查过一遍):

(1)数据库的配置格式可能没有设置中文,查询时可能出现乱码,数据库中url按如下配置:

spring.datasource.url=jdbc:mysql://localhost:3306/epac_system?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8

启动Unicode编码,并设置格式为utf-8

(2)@Request注解要求,从前端传递过来的字段名称要和自己设置的字段名称一致,数据类型也要求一致,且请求方式一般是Post,比如说我在后端实体类中声明了一个User类如下:

@Data
calss User {private String username;private String password;
}

调用controller如下

@PostMapping("/getUser")
public R getUser(@RequesrBody User user){//代码逻辑return R.success().data();
}

从前端传递的JSON数据如下:

{"username":"admin","password":"123"
}

这样Spring才能将JSON的数据封装成功


day10-07 Nacos注册项目不成功

我出现的问题是在IEDA的项目中引入Nacos依赖,配置完Nacos注册的注解后,启动项目,项目启动后立刻关闭,但是控制台没有任何异常输出,仔细排查了一下,觉得可能是SpringBoot和SpringCloud版本不匹配

更改为正确的依赖版本后,启动就会有Spring控制台的正常输出logo,控制台会提示注册成功语句:

nacos registry, service_community 192.168.43.114:8001 register finished

问题比较简单,这里列出来,是因为希望各位在配置SpringBoot和SpringCloud版本时需要更细心一些,去仔细查看对应版本;
我用的是SpringBoot2.6.5,对应的SpringCloud版本为2021.0.1,以下是具体的配置:

SpringBoot

   <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.6.5</version><relativePath/> <!-- lookup parent from repository --></parent>

SpringCloud

<!--Spring Cloud--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>2021.0.1</version><type>pom</type><scope>import</scope></dependency>

一点后记
项目差不多做完了,自己按照自己的题目重做了后面的模块,SpringSecurity和后面一部分视频都刷完了,虽说收获了很多,但是写在简历上确实算不上一个拿得出手的项目。写下这些话的时候,我已经答辩完准备离校了。 最近断断续续的投了些简历,说实话,除了校招的几个公司和培训机构,愿意给面试机会的公司几乎没有;有些迷茫,不知道当初决定走Java这条路是不是做错了。

2022谷粒学院BUG记录相关推荐

  1. 谷粒学院day9关于章节小节修改后无法添加的bug记录

    关于之前困扰的一个问题,谷粒学院day09那的一个bug 问题描述: 章节小节添加都可以正常添加 修改的时候也可以正常修改,问题就出在修改完后无法在添加了,还是会显示修改 解决办法*:由于当时初学的时 ...

  2. 2022年最新《谷粒学院开发教程》:9 - 前台课程模块

    资料 资料地址 后台管理系统目录 前台展示系统目录 1 - 构建工程篇 7 - 渲染前台篇 2 - 前后交互篇 8 - 前台登录篇 3 - 文件上传篇 9 - 前台课程篇 4 - 课程管理篇 10 - ...

  3. 尚硅谷谷粒学院学习笔记(防坑点的总结部分勘误)

    谷粒学院学习笔记 部分勘误 数据库设计规约 模块说明 环境搭建 创建一个Spring Boot 的父工程,版本使用:2.2.1.RELEASE 父工程pom.xml里面添加 在pom.xml中添加依赖 ...

  4. 谷粒学院(五)---Maven从入门到入魔

    前言 我们在日常的javaee项目开发中,对于大量模块的开发管理和jar包的管理,我们难免会设计到maven进行项目的管理,这里我总结Maven中比较重要的一些知识点,这也是我在最近学习的项目谷粒学院 ...

  5. 谷粒学院16万字笔记+1600张配图(十六)——讲师显示、课程显示

    项目源码与所需资料 链接:https://pan.baidu.com/s/1azwRyyFwXz5elhQL0BhkCA?pwd=8z59 提取码:8z59 文章目录 demo16-讲师显示.课程显示 ...

  6. 谷粒学院day08——课程章节与小节的实现

    谷粒学院day08--课程章节与小节的实现 1.添加课程基本信息完善 1.1 整合文本编辑器 2.课程大纲管理 2.1 后端实现 2.2 前端实现 3.修改课程功能 3.1 后端实现 3.2 前端实现 ...

  7. 谷粒学院订单管理 server-order 模块

    谷粒学院订单管理 server-order 模块 模块介绍 主要实现前台页面购买课程后,生成订单,并实现微信支付的功能. ![]](https://img-blog.csdnimg.cn/7b821f ...

  8. 谷粒学院前台登录流程

    谷粒学院前台登录流程 登录验证部分 第一步 前台输入账号密码 第二步 后端验证 首先判断手机号是否存在 其次判断密码是否正确 再判断账号是否被禁用 验证通过后,利用 JwtUtils 工具生成 Jwt ...

  9. Day213.讲师详细页、课程列表页面、课程详细页、阿里云视频播放测试、阿里云云视频播放器 -谷粒学院

    谷粒学院 讲师详细页 一.后端部分 1.TeacherFrontController @RestController @CrossOrigin @RequestMapping("/eduse ...

  10. Day212.OAuth2、微信二维码登入注册功能、用户登录信息前后端供、讲师列表前后端 -谷粒学院

    谷粒学院 OAuth2的使用场景 一.OAuth2解决什么问题 1.OAuth2提出的背景 照片拥有者想要在云冲印服务上打印照片,云冲印服务需要访问云存储服务上的资源 2.图例 资源拥有者:照片拥有者 ...

最新文章

  1. 2018/8/30-31 A social learning particle swarm optimization for scalable optimization.
  2. C++知识点33——使用C++标准库(无序关联容器unordered_(multi)map,unordered_(multi)set)
  3. php 7月世界排名2017,TIOBE2017榜单公布,PHP还会是世界上最好的语言吗?
  4. MCtalk对话兰迪少儿英语:1v1不具普适性,小班课才是下个风口
  5. 大数据下的BI新特性
  6. 《NIOSII那些事儿》rev7.0 PDF版本发布
  7. maven构建scala工程并最终运行的所有细节(scala maven helloworld)
  8. USACO2.4のP1522-牛的旅行(Cow Tours)【最短路Flody】
  9. http协议与服务器通信,iPhone应用用HTTP协议和服务器通信
  10. 大学计算机专业绩点3.7什么水平,大学绩点3.0什么水平 大学里的绩点有什么用...
  11. 第 19 章 保护方法调用
  12. 解决 SQL 注入的另类方法
  13. mysql添加值_怎么给mysql添加值?
  14. Linux怎么删掉ftp服务器,Linux怎么删掉ftp服务器
  15. 数据包络分析-BCC模型
  16. Matlab绘图设置任意位置的图例,多个图例设置
  17. 龙珠游戏-博弈之斐波那契数列
  18. matlab示波器坐标调整,SIMULINK示波器参数设置
  19. Gartner 2016数据仓库和数据分析数据库管理解决方案魔力象限
  20. MapGuide应用程序示例——你好,MapGuide!

热门文章

  1. vs2019轻松完成python项目创建
  2. 同济大学 线性代数 第六版 pdf_线性代数思维导图专题
  3. bat批量剪切命令_批量处理文件.bat命令手册
  4. bat命令调用rar进行文件夹压缩
  5. C#人脸识别入门篇-STEP BY STEP人脸识别—静态照片人脸检测
  6. Java实现Map集合二级联动
  7. 小乌龟(TortoiseGit)基本使用详解
  8. 前端开发写代码哪个软件更好用?
  9. 计算机组成原理(白中英) 第七章 课后题答案
  10. 如何下载火山安卓软件开发平台