springboot日常问题处理手记

springboot启动问题

1.@Autowired报错Could not autowire. No beans of xxx

解决:只需在DAO接口加上@Component 或者 @Repository

参考:https://blog.csdn.net/Mr_EvanChen/article/details/84035445

2.Consider defining a bean of type ‘XXX’ in your configuration.

解决:在启动类上加上@MapperScan或者@ComponentScan注解,手动指定application类要扫描哪些包下的注解,如下所示: 

@SpringBootApplication
@ComponentScan(basePackages = {"com.xxx.xxx.dao"})

参考:https://www.cnblogs.com/nananana/p/9333917.html

      https://blog.csdn.net/suxiexingchen/article/details/84984349

3.Failed to configure a DataSource: 'url' attribute is not specified and no embedd

问题:应用中没有配置datasource的一些相关属性,例如:地址值啊,数据库驱动啊,用户名啊,密码啊

解决:application.properties文件中加spring.datasource相关配置

参考:https://blog.csdn.net/qq_40223688/article/details/88191732

4.org.springframework.amqp.rabbit.listener.exception.ListenerExecutionFailedException

问题:之前生成了引起异常的队列,一启动就报错

解决:浏览器打开http://192.168.0.100:15672/#/把之前相关的队列删除,再次启动不报错了

参考:https://www.cnblogs.com/javawxid/p/10855071.html

5.Exception in thread "main" java.lang.NoSuchMethodError: freemarker.template.Configuration.

定位是freemarker版本问题: 

<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
    <version>2.3.20</version>
</dependency>

改为:

<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
    <version>2.3.28</version>
</dependency>

就正常了

springboot运行中问题

1.mybatis-plus驼峰下划线转换问题

设置不用其下划线命名法,在MybatisPlusConfig.java中设置
MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean();
mybatisPlus.setDbColumnUnderline(true);

 也可以在application.yml配置

mybatis-plus:
    global-config:
        #驼峰下划线转换
        db-column-underline: true

  

原文地址:https://www.cnblogs.com/cxscode/p/11763378.html