Mybatis 相关使用问题

找不到对应的Mapper对象

  • 报错内容
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2023-08-20 14:48:44.180 ERROR 7516 --- [           main] o.s.b.d.LoggingFailureAnalysisReporter   : 

***************************
APPLICATION FAILED TO START
***************************

Description:

Field userMapper in mybatisplustest.controller.MybatisPlusTestController required a bean of type 'mybatisplustest.mapper.UserMapper' that could not be found.

The injection point has the following annotations:
   - @org.springframework.beans.factory.annotation.Autowired(required=true)


Action:

Consider defining a bean of type 'mybatisplustest.mapper.UserMapper' in your configuration.

  • 解决方案
    • 在启动类上增加 MapperScan注解
    	@MapperScan("mybatisplustest.mapper")
    @SpringBootApplication
    public class MybatisPlusApplication {
        public static void main(String[] args) {
            SpringApplication.run(MybatisPlusApplication.class, args);
        }
    }
    
    	```
    - 在对应的 UserMapper 上增加  @Mapper 注解
    ```java
    @Mapper
    public interface UserMapper extends BaseMapper<User> {
    }
    
  • mapper接口的作用
    可以同于替换 xml ,减少重新编写xml 映射文件

MybatisPlus 无法实现分页功能,每次查询都是全部的数据

  • 问题描述
    MybatisPlus 实现分页功能,但是每次都是全部的数据,未能实现分页
  • 解决方案
    增加MybatisPlus 配置文件类, 如果不增加这个配置类,则无法实现对应的效果。 来源
    import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
    import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    
    @Configuration
    @ConditionalOnClass(value = {PaginationInterceptor.class})
    class MybatisPlus {
        @Bean
        public PaginationInterceptor paginationInterceptor() {
            PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
            return paginationInterceptor;
        }
    }
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MyBatis 是一个持久层框架,可以简化数据库访问的操作。下面是使用 MyBatis 的简单步骤: 1. 引入 MyBatis 依赖:在项目的 `pom.xml` 文件中添加 MyBatis 的依赖项。例如: ```xml <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency> ``` 2. 创建 MyBatis 配置文件:创建一个名为 `mybatis-config.xml` 的文件,并在该文件中配置 MyBatis相关信息,例如数据库连接信息、映射文件路径等。 3. 创建映射文件:创建一个或多个映射文件(`.xml` 格式),用于定义 SQL 语句和结果映射规则。 4. 创建数据访问接口:创建一个或多个 Java 接口,并使用注解或 XML 配置文件来定义数据访问的方法。 5. 配置数据源:在项目中配置数据库连接池,例如使用连接池技术如 HikariCP。 6. 创建 MyBatis 工厂:使用 MyBatis 提供的 `SqlSessionFactoryBuilder` 类读取配置文件,并创建一个 `SqlSessionFactory` 对象。 7. 创建会话:通过 `SqlSessionFactory` 对象创建一个 `SqlSession` 对象,用于执行 SQL 语句。 8. 执行 SQL 语句:通过 `SqlSession` 对象调用接口中定义的方法来执行 SQL 语句,获取结果。 下面是一个简单的示例: ```java // 创建 MyBatis 工厂 SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("mybatis-config.xml")); // 创建会话 SqlSession sqlSession = sessionFactory.openSession(); // 获取数据访问接口 UserDao userDao = sqlSession.getMapper(UserDao.class); // 执行 SQL 语句 User user = userDao.getUserById(1); // 关闭会话 sqlSession.close(); ``` 这只是 MyBatis 的简单使用方法,具体的使用方式还需要根据实际情况进行配置和调整。希望对你有所帮助!如果有更多问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值