springboot学习中错误记录(随手记)

====================================================

第一天在写入门程序的时候,springboot运行的主程序放在的com.zyh.main包中错误,放在com.zyh中再运行正确了。
在这里插入图片描述
在这里插入图片描述

======================================================

用idea创建springboot项目空包,就一个空包,没src文件啥也没:
阿里云:https://start.aliyun.com/
官网:https://start.spring.io/
国内地址:https://start.springboot.io/(http://start.springboot.io/)
试试上面这几个地址就可以了!!!
(阿里云里面有的springboot的版本比较低,你再去pom文件改一下也可以,推荐国内网址)
在这里插入图片描述
【后续,又遇到了相同问题,还是这个地址,是自己网络原因,多尝试几次就可以了】
【再后续,又遇到了,哈哈哈,,,这次我没重新建,我关闭项目,又重新打开好几次正常了,估计还是网络原因结构建的慢!】
======================================================================
org.springframework.context.ApplicationContextException: Failed to start bean ‘documentationPluginsBootstrapper’; nested exception is java.lang.NullPointerException
springboot项目整合swagger3的时候会报的错。
解决办法,springboot里面配置:
spring:
mvc:
pathmatch:
matching-strategy: ant_path_matcher

即可解决

=========================================================================

SpringBoot的yml文件报org.yaml.snakeyaml.scanner.ScannerException: mapping values are not allowed here in ‘reader’, line 11, column 16:
这个错误就和别人不一样了,我看网上都是冒号后面没加空格,我是加类空格还是这个错误!
原因:我编码有问题了,去setting里面设置一下FILE Econding,都设置成utf-8就行了!另外,如果改类还是不行,那就是识别不了了,把这个识别不了的加上双引号久不会报错了。
在这里插入图片描述

==========================================================================

        <groupId>com.mysql</groupId>
        <artifactId>mysql-connector-j</artifactId>
        <scope>runtime</scope>
    </dependency>和
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>什么区别

这两个依赖项实际上是相同的,只是groupId稍有不同。

第一个依赖项的groupId是com.mysql,artifactId是mysql-connector-j。这是MySQL Connector/J库的官方groupId和artifactId。

第二个依赖项的groupId是mysql,artifactId是mysql-connector-java。这是MySQL Connector/J库的旧版本的groupId和artifactId。

两个依赖项都指定了scope为runtime,表示这些库在项目的运行时将被加载和使用。

因此,这两个依赖项的区别仅在于groupId的命名上,但它们都是用于连接和操作MySQL数据库的库。通常建议使用第一个依赖项,即com.mysql的groupId,以获取最新版本的MySQL Connector/J库。

解决java.sql.SQLException: Access denied for user ‘root‘@‘localhost‘ (using password: YES)报错
最后改权限,啥都不行,yml文件里密码加“”就行了!
在这里插入图片描述

===========================================================================
在整合mybatis-plus和springboot的时候出现数据库id从很大的数开始增加的现象。大概是我配置了@TableId(type=IdType.AUTO)设置一下自动增量就好
在这里插入图片描述

============================================================================

发现报错 java.lang.TypeNotPresentException: Type [unknown] not present
添加下面依赖即可

<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.5</version>

============================================================================

解决上面哪个错误还出现了
An attempt was made to call a method that does not exist. The attempt was made from the following
其实就是我一开始用其他jar包写好了程序,就是用下面的包,我一开始都是弹珠正宗的包mybatis-plus-boot-starter,就提示的时候说需要倒数啥包我就导入,最后到时不能运行,目前这个错就是到入的包太多,找不到需要的类,就报错了,注掉多余的包就好了。mybatis-plus-boot-starter都包含下面的了!

<!--        <dependency>-->
<!--            <groupId>com.baomidou</groupId>-->
<!--            <artifactId>mybatis-plus-annotation</artifactId>-->
<!--            <version>3.5.3.1</version>-->
<!--            <scope>compile</scope>-->
<!--        </dependency>-->
<!--        <dependency>-->
<!--            <groupId>com.baomidou</groupId>-->
<!--            <artifactId>mybatis-plus-core</artifactId>-->
<!--            <version>3.5.3.1</version>-->
<!--            <scope>compile</scope>-->
<!--        </dependency>-->
<!--        <dependency>-->
<!--            <groupId>org.mybatis</groupId>-->
<!--            <artifactId>mybatis-spring</artifactId>-->
<!--            <version>2.0.7</version>-->
<!--            <scope>compile</scope>-->
<!--        </dependency>-->

============================================================================

Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured.报错说没url,已经在application里面配置了,结果去target包里一看,没application.xml这个文件,然后看了一下Resource没被表示成根目录,标识类一下就成功了
在这里插入图片描述

==============================================================
url: jdbc:mysql://localhost:3306/db1?serverTimezone=GMT%2B8

C ause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLNonTransientConnectionException: Cannot load connection class because of underlying exception: com.mysql.cj.exceptions.WrongArgumentException: Failed to parse the host:port pair ‘localhost:db1’.] with root cause报错,找来找去发现是上面写错了,手写的时候没注意(居然没写端口号救命啊!!!)加上就没错了

======================================================================

java: 无法访问org.springframework.data.redis.core.RedisTemplate
错误的类文件: /D:/mavenRepository/org/springframework/data/spring-data-redis/3.1.2/spring-data-redis-3.1.2.jar!/org/springframework/data/redis/core/RedisTemplate.class
类文件具有错误的版本 61.0, 应为 55.0
请删除该文件或确保该文件位于正确的类路径子目录中。

太离谱了,我总是马虎的五花八门!!!这个错误是我在创建springboot就有这个错误了,

最后发现这个错了,就去删除这个文件下得jar包了,然后删除会来又运行了一下,又报错另一个jar包也是版本高,这个时候我才意识到是不是springboot版本出问题了(3.12),就是这里的问题

就是说,2.7.14的springboot版本需要jdk8-20,而我用的jdk11,所以要用这个springboot版本,但是我创建项目的时候idea会默认使用较新的版本,3+版本,我的jdk11,就不能用呗,不能用我运行文件的时候就不能是类加载器去加载了。
根据springboot和jdk对应版本,去官网看一下:
在这里插入图片描述

============================================================================

org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379

这个错误原因就多了,redis方面:redisconf总要开开ip地址,protected-mode yes 把yes改为no,还要关闭防火墙,然后再idea中使用的时候,在yml文件中配置好port等

  redis:
    port: 6379
    host: 192.168.xx.x(redis在哪里运行就写哪个)
    database: 0(这个选择是哪个编号的库,我觉得不写也可以,也能运行)

以上,都不行的话,尝试在idea想连接mysql那样连接一下redis,如果连接正常,就ok了

小技巧
这是在ideadebug中使用的,用来查看某个变量运行中得到的值,名字是评估表达式~,很方便
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值