不使用自动注解方式来生成mapper,采用原生方式来生成mapper

本文介绍在SpringBoot结合MyBatisPlus的环境下,如何在普通类中通过创建SqlSessionFactory来使用mapper进行数据库操作,包括配置文件的设置及具体实现步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前提环境:SpringBoot + MyBatis Plus

问题描述:在普通类中是无法通过自动注解的方式类来使用mapper

解决办法:采用原生方式SqlSessionFactory来生成mapper

第一步:创建resources目录下下创建如下所示的配置文件config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <property name="driver" value="数据库驱动" />
                <property name="url" value="jdbc:mysql://xxx:9527/demo"/>
                <property name="username" value="账号" />
                <property name="password" value="密码" />
            </dataSource>
        </environment>
    </environments>

    <!--使用谁的mapper就要把谁的mapper.xml文件引入进来,不引入则会报错-->
    <mappers>
        <mapper resource="mapper/xxxMapper.xml" />
    </mappers>
</configuration>

第二步:使用SqlSessionFactory生成mapper

InputStream inputStream = Resources.getResourceAsStream("config.xml");
//读取配置文件的配置信息,利用SqlSessionFactoryBuilder创建sqlSessionFactory
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//利用sqlSessionFactory打开与数据库的会话
SqlSession sqlSession = sqlSessionFactory.openSession();
xxxMapper mapper = sqlSession.getMapper(xxxMapper.class);

/**
 * 此处先做与数据库的交互操作,然后再关闭会话通道
 */

//关闭会话通道
sqlSession.close();

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值