记录自己遇到的奇怪bug

1. 找不到或无法加载主类 com.itheima.Application

原因:绝对路径(注意是绝对路径,而不是相对路径)上的文件夹命名中含有中文,因此找不到。

2. 接口中用@RequestBody且驼峰数据命名格式,在postman中要换个名字传入

public class User{
 String stuName;
 String age;
}

例如:在postMan中如果正常用stuName传入,后端会显示stuName为null,也就是说其实并不会接收到

需要在postMan中传入stu_name,这样stuName才能接收到

3. 注入的奇怪调用(发现不管怎么修改自己的函数都没有改变的效果,函数调用别处去了,用ctrl + B检查它会调用哪里去)

在公司中,为了测试代码而不破坏代码,选择复制了一段代码到另一个类中,结果发现修改我复制后的各种数据都没有改变

用ctrl + B从程序入口进去,发现它调用到了原来的类中的同名函数去了,也就是不调用自家的函数调用了别家函数去了

在这里我复制了公司的代码创建了个类做测试用,除了类名不一样其他的基本一样,但是当我用ctrl + B去看里面的renderPoi()发现它调用的不是它下面的renderPoi(),而是原来的用做复制的renderPoi(),可能这就是注入的效果,下次注意。

4. 如果要使用注入,需要在使用的类上加@Component等注解

否则报错:

Execution failed for task ':boardware-inspection-webapp:Webap p.main()'. > Process 'command 'D:/Jdk/bin/java.exe'' finished with non-zero exit value 1 * Try: Run with --stacktrace option to get the stack trace. Run with the --info or --debug option to get more log output. Run with --scan to get full insights.

编译错误

注意:服务层的@Service在实现类Impl上注入,而不是接口

5. 系统找不到指定路径

写了个相对路径,确定命名和各层级地址等都没问题但是系统就是找不到。

 方法1 : 类名.class.getClassLoader().getResource(templatePath)

// 项目资源目录下的路径(src/main/resources下)
final String templatePath = "doc/dv/task_2.docx";

//后面有getResourceAsStream()返回的是输出流
var documentFile = this.getClass().getClassLoader().getResourceAsStream(templatePath);

//返回的是URL对象,表示资源文件的位置
var documentPath = this.getClass().getClassLoader().getResource(templatePath);

这种方法假设文件位于类路径(classpath)中,这意味着文件应该在项目的资源目录(例如src/main/resources)或类的输出目录(例如target/classes)下。

直接写resources后面的:

doc/dv/task_2.docx 

解决办法:用右键 ——> Copy Path ——> Source root:这样出来的路径就是满足上述要求的路径

方法2 : 类名.class.getResource("/" + templatePath)

相比于前面的就是多加一个/



InputStream inputStream = YourClassName.class.getResourceAsStream("/doc/dv/task_2.docx");

6. java.net.UnknownHostException:  mysql

开始的配置:

url: jdbc:mysql://mysql:3306/heima?useSSL=false

更改后的配置

jdbc:mysql://127.0.0.1:3306/heima?useSSL=false

说白了其实就将其他地址转换为本地机地址

7. 系统错误

原因是:navicat中数据库大小写不区分,但是实际搜索的时候是区分的,也就是数据库没对上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值