1、问题描述

项目运行中遇到一个问题:An internal error occurred while trying to authenticate the user.

尝试对用户进行身份验证时发生内部错误。

问题说明:大多数遇到这个问题的都是出现在使用mybatisplus和springSecurity框架中,springSecurity登录的时候会调用UserDetailsService中的loadUserByUsername方法进行登录。

本质:就是由于配置或用户名密码信息有误,造成无法正确执行查询信息造成的。

2、常见原因1:mybatisplus没有关闭默认的驼峰命名法

如果你的数据库表字段是stu_id,在没有关闭驼峰命名法的时候,系统会自动将字段名称修改成stuId,从而造成数据查询映射的失败。需要做如下配置:

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 打印执行的sql语句
    map-underscore-to-camel-case: false # 关闭驼峰命名法

3、常见原因2:没有在启动类中扫描mapper接口或地址错了

使用mybatisplus的时候,自定义的mapper文件需要继承BaseMapper接口。

这个时候需要在启动类中扫描mapper接口,注意地址不要写错了

@MapperScan("com.txc.mybatisplus0403.mapper")

@SpringBootApplication
@MapperScan("com.txc.mybatisplus0403.mapper")
public class Mybatisplus0403Application {
    public static void main(String[] args) {
        SpringApplication.run(Mybatisplus0403Application.class, args);
    }

}

4、SpringSecurity5.7.10整合Mybatisplus3.5.3.2自定义用户登录逻辑

这个资源是收费的,介意的不要点

SpringSecurity5.7.10整合Mybatisplus3.5.3.2自定义用户登录逻辑_雾林小妖的博客-CSDN博客

08-31 09:25