(Sping Xml方式整合第三方框架)学习Spring的第十天

Spring整合mybatis

1 . 导入Mybatis整合Spring的相关坐标

html 复制代码
 <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>5.2.13.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>2.0.5</version>

2 . 编写Mapper和文件

在此给出 Mapper.xml文件如下

html 复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.itheima.mapper.UserMapper">
    <select id="findAll" resultType="com.itheima.pojo.User">
        select id,username,password from tb_user
    </select>
</mapper>

3 . 在Applicationcontext.xml文件进行配置

html 复制代码
  <!--        配置数据源信息-->
        <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" >
                <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis"></property>
                <property name="username" value="root"></property>
                <property name="password" value="y2123802992"></property>
        </bean>

        <!--配置SqlSessionFactoryBean,作用将SqlSessionFactory存储到spring容器-->
        <bean class="org.mybatis.spring.SqlSessionFactoryBean">
            <property name="dataSource" ref="dataSource"></property>
        </bean>

        <!--MapperScannerConfigurer,作用扫描指定的包,产生Mapper对象存储到Spring容器-->
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="com.itheima.mapper"></property>
        </bean>
        <bean id="userService" class="com.itheima.service.impl.UserServiceImpl">
        <!--                <constructor-arg name="name" value="haha"></constructor-arg> 构            造Bean的参数都可以这样设置-->
                <property name="userMapper" ref="userMapper"></property>

        </bean>

注意userMapper对象自动创建 , 由MapperScannerConfigurer扫描后,自动产生对象存储到Spring容器 , 所以无需配置 , 在userService标签里property属性直接设置即可

还需在userServiceiml里注入mapper

java 复制代码
private UserMapper userMapper;
    public void setUserMapper(UserMapper userMapper) {

        this.userMapper = userMapper;
    }

4 . 最后在测试文件测试即可

java 复制代码
 UserService bean = applicationContext.getBean(UserService.class);

注意: SqlSessionFactory是mybatis中的一个类 , 数据库实例 , 可以进行增删改查

相关推荐
l1t5 小时前
DeepSeek辅助利用搬移底层xml实现快速编辑xlsx文件的python程序
xml·开发语言·python·xlsx
deng-c-f7 小时前
Linux C/C++ 学习日记(28):KCP协议(四):如何实现更复杂的业务:将连接状态的管理进行封装,用户只需实现发送、接收、断开的处理逻辑。
学习·网络编程·kcp
立志成为大牛的小牛10 小时前
数据结构——二十三、并查集的终极优化(王道408)
开发语言·数据结构·笔记·学习·程序人生·考研
珹洺10 小时前
Java-Spring入门指南(二十七)Android Studio 第一个项目搭建与手机页面模拟器运行
java·spring·android studio
laopeng30111 小时前
基于Spring AI Deep Researcher Agent
java·人工智能·spring
QT 小鲜肉11 小时前
【个人成长笔记】Qt Creator快捷键终极指南:从入门到精通
开发语言·c++·笔记·qt·学习·学习方法
m0_7369270412 小时前
Spring Boot自动配置与“约定大于配置“机制详解
java·开发语言·后端·spring
QT 小鲜肉13 小时前
【数据结构与算法基础】05. 栈详解(C++ 实战)
开发语言·数据结构·c++·笔记·学习·算法·学习方法
A9better14 小时前
嵌入式开发学习日志40——stm32之I2C协议层
stm32·单片机·嵌入式硬件·学习
ha204289419415 小时前
Linux操作系统学习之---线程控制
java·linux·学习