Mybatis-Plus报错:Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required

823 阅读1分钟

记录一下遇到的问题。

版本:

  • SpringBoot:3.4.0
  • Mybatis-Plus:3.4.2

application.yml代码

server:
  # 项目启动端口
  port: 8080
spring:
  application:
    name: recruit
  datasource:
    url: jdbc:mysql://localhost:3306/blog?characterEncoding=utf-8&serverTimezone=Asia/Shanghai
    # 自己数据库的账号和密码
    username: 
    password: 
    driver-class-name: com.mysql.cj.jdbc.Driver
# MyBatis Plus配置
mybatis-plus:
  configuration:
    #在映射实体或者属性时,将数据库中表名和字段名中的下划线去掉,按照驼峰命名法映射
    map-underscore-to-camel-case: true
    # SQL语句等日志信息输出在控制台
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

我的一个SpringBoot3项目整合Mybatis-Plus时遇到以下报错:

报错一

image.png

controller层代码

@RestController
public class LoginController {
    @Autowired
    private UserMapper userMapper;
    @GetMapping("/user")
    public String user() {
        System.out.println(userMapper.selectById(1));
        return "user";
    }
}

UserMapper代码

public interface UserMapper extends BaseMapper<User> {
}

报错二

image.png

controller层代码

@RestController
public class UserController {
    @Autowired
    private UserService userService;

    @GetMapping("/users")
    public User getUsers() {
        return userService.getUsers(1);
    }
}

Service层代码

@Service
public class UserServiceImpl implements UserService {

    @Resource
    private UserMapper userMapper;

    @Override
    public User getUsers(Integer id) {
        return userMapper.selectById(id);
    }
}

UserMapper代码

public interface UserMapper extends BaseMapper<User> {
}

解决方案

找到pom.xml文件,修改Mybatis-Plus的依赖:

<!-- mybatis-plus依赖 -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
    <version>3.5.5</version>
</dependency>

修改完成后记得刷新一下maven