springboot、springcloud 、mybatis的常见问题及解决总结

1、Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory

解决办法:

     缺少commons-logging-1.1.3.jar包,所以添加这个包,或直接用maven依赖

 

2、无效的源发行版: 1.9

解决办法:

如果你安装的是JDK1.7,而在file->project structure中设置的是language level是8的话,就会出现这个错误提示:无效的源发行版:8。

解决办法:将语言级别改为7,或6。即语言级别不能高于你安装的版本。

 springboot、springcloud 、mybatis的常见问题及解决总结_第1张图片

另外,如果file -> settings -> build,exception,deployment -> compiler -> java compiler 中如果将模块的target bytecode version改为1.8,则会出现这个错误提示:无效的目标发行版:1.8。应改为小于等于安装的版本号。

 

3、IDEA 错误:找不到或无法加载主类

解决:maven编译

 springboot、springcloud 、mybatis的常见问题及解决总结_第2张图片

或直接在终端 执行mvn clean install

 

4、springboot 报错Field XXX required a bean of type XXX that could not be found.

https://blog.csdn.net/qq_36874292/article/details/80406951

https://blog.csdn.net/daxiang52/article/details/79310889

5、使用maven来build报错maven Failed to execute goal

org.apache.maven.plugins:maven-surefire-plugin

解决:


   org.apache.maven.plugins
   maven-surefire-plugin
   
      true
   

6、SpringBoot整合Mybatis报错:Consider defining a bean of type 'xx.xx.xx' in your configur

https://blog.csdn.net/weixin_39800144/article/details/79176373

7、Consider defining a bean of type

关于spring boot自动注入出现Consider defining a bean of type  xxxxxx

正常情况下加上@Component注解的类会自动被Spring扫描到生成Bean注册到spring容器中,既然他说没找到,也就是该注解被没有被spring识别,问题的核心关键就在application类的注解SpringBootApplication上

 

这是由于springBoot启动时,没有扫描到com.xxxx.Dao ,而在com.xxx.ServiceImpl中又使用了@autowired

private xxDao xxDao进行装配,所以会发现错误,说没有定义。此时需要在springBoot的启动类上,加个注解:@MapperScan("持久层路径"),这样就会扫描到com.xxxxDao了。

 

https://blog.csdn.net/a532672728/article/details/77702772/

https://blog.csdn.net/weixin_39800144/article/details/79176373

 

8、异常:This application has no explicit mapping for /error, so you are seeing this as a fallback

出现这个异常说明了跳转页面的url无对应的值.

原因1:

Application启动类的位置不对.要将Application类放在最外侧,即包含所有子包 
原因:spring-boot会自动加载启动类所在包下及其子包下的所有组件.

原因2:

在springboot的配置文件:application.yml或application.properties中关于视图解析器的配置问题: 
当pom文件下的spring-boot-starter-paren版本高时使用: 
spring.mvc.view.prefix/spring.mvc.view.suffix 
当pom文件下的spring-boot-starter-paren版本低时使用: 
spring.view.prefix/spring.view.suffix

原因3:

控制器的URL路径书写问题 
@RequestMapping(“xxxxxxxxxxxxxx”) 
实际访问的路径与”xxx”不符合.

9、Caused by: java.lang.ClassNotFoundException: org.springframework.dao.support.DaoSupport

在使用spring的jdbcTemplate的时候,提示Caused by: java.lang.ClassNotFoundException: org.springframework.dao.DataAccessException错误。 
解决方法:导入对应版本的spring-tx-xxx.RELEASE.jar包

10、Caused by:java.lang.NoClassDefFoundError: org/hibernate/validator/internal/engine/DefaultClockProvider

at org.hibernate.validator.internal.engine.ConfigurationImpl.(ConfigurationImpl.java:135) ~[hibernate-validator-6.0.10.Final.jar:6.0.10.Final] at org.hibernate.validator.internal.engine.ConfigurationImpl.(ConfigurationImpl.java:108) ~[hibernate-validator-6.0.10.Final.jar:6.0.10.Final] at org.hibernate.validator.HibernateValidator.createGenericConfiguration(HibernateValidator.java:33) ~[hibernate-validator-6.0.10.Final.jar:6.0.10.Final]

 

11、IntelliJ Idea解决Could not autowire. No beans of 'xxxx' type found的错误提示(注解方式)

是有这个注解,但是就是报错,可能的原因就是这个了

 springboot、springcloud 、mybatis的常见问题及解决总结_第3张图片

 

12、Required request body is missing

https://blog.csdn.net/jhq2904982765/article/details/77141618

13、com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'park_no' at row 1

添加数据的时候,超出范围了。

就是你设计数据库的时候,给字段的长度小于你添加的长度。

 

14、Description:

Cannot determine embedded database driver class for database type NONE

Action:

If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).

解决办法:

因为spring boot只要你在pom中引入了mybatis-spring-boot-starter 他就会默认需要加载数据库相关的配置

检查下有没有配置数据库相关的信息, 因为spring boot只要你在pom中引入了mybatis-spring-boot-starter 他就会默认需要加载数据库相关的配置

你要是没有在配置文件中配置数据相关信息,它会加载默认的配置(不存在的) 然后就报错了, 所以你要是要用数据库相关的东西 你就完善配置
不用数据库相关的东西 就不要在pom中引入相关依赖。

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

1、启动SpringCloudEureka 报异常:

com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server   和  com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server

springboot、springcloud 、mybatis的常见问题及解决总结_第4张图片

解决办法:

在默认设置下,Eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为。

禁止方式如下:在application.properties配置文件中增加以下内容

eureka.client.register-with-eureka=false

eureka.client.fetch-registry=false
server:
  port: 1001
eureka:
  instance:
    hostname: localhost
  client:
    register-with-eureka: false
    fetch-registry: false

springboot、springcloud 、mybatis的常见问题及解决总结_第5张图片

 

  1. java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.([Ljava/lang/Object;)V

你可能感兴趣的:(微服务~SpringCloud,JAVA~SpringBoot,JAVA~JavaWeb)