玩转Spinrg Boot框架教程09之整合MyBaits 配置文件XML方式

本文介绍如何使用XML配置文件方式替代注解方式来整合MyBatis到SpringBoot项目中,通过编写Mapper配置文件并调整全局配置,实现SQL语句的外部化管理。

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

Spinrg Boot框架教程09之整合MyBaits 配置文件XML方式

注解方式对sql语句是硬编码,对于后期扩展维护不方便,将上一节的注解方式更改为xml配置文件方式,把sql语句编写在配置文件中。

XML方式是在注解的方式基础上修改的,请查看SpringBoot整合MyBatis注解篇

玩转Spring Boot框架教程08之整合MyBatis注解方式

1、编写Mapper配置文件

在src/main/resources目录下新建com/itcodeschool/dao/UserMapper.xml文件

1、编写Mapper


UserMapper.xml文件内容:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.itcodeschool.dao.UserDao">

    <select id="findUser"resultType="User" parameterType="int">

        selectid,name,age,sex,address from user where id = #{id}

    </select>

    <select id="findUserList"resultType="User">

       select id,name,age,sex,address from user

    </select>

    <insert id="add"parameterType="User">

    insertinto user(name, age, sex, address) values(#{name},#{age},#{sex},#{address})

    </insert>

    <update id="update"parameterType="User">

        updateuser set name = #{name}, address = #{address} where id = #{id}

    </update>

    <delete id="delete">

        deletefrom user where id = #{id}

    </delete>

</mapper>

 

2、修改全局配置文件

mybatis:

 configuration:

   map-underscore-to-camel-case:true

  mapper-locations: mybatis/com/itcodeschool/dao/*Mapper.xml

  typeAliasesPackage: com.itcodeschool.domain

3、修改UserDao

去掉接口类上的注解和方法上的注解以及方法里面的注解

public interface UserDao {

          int add( Useruser);

         intupdate(User user);

         intdelete(int id);

         UserfindUser(int id);

         List<User>findUserList();

}

4、运行测试


测试请参考

玩转Spring Boot框架教程08之整合MyBatis注解方式

<think>好的,我现在需要帮助用户找到Spring与MyBatis整合配置文件示例或教程。根据用户提供的引用内容,特别是引用[2],里面提到一个极简的示例,仅需一个XML配置文件。首先,我应该确认用户的需求是希望看到简洁的配置示例,而不是多个分散的XML文件。 接下来,我需要回忆Spring和MyBatis整合的一般步骤。通常需要配置数据源、SqlSessionFactoryBean、Mapper扫描等。用户引用的示例可能将这些配置集中在一个文件中,所以我要确保示例结构清晰,并且符合最新的Spring配置方式,比如使用注解和Java配置,但用户提到的是XML配置,所以可能需要展示XML的写法。 然后,我需要检查提供的引用内容是否有具体的配置代码。引用[2]提到“除mybatis映射文件外,整个spring容器框架整合mybatis只需要一个xml配置文件”,因此我应该构造一个包含数据源、SqlSessionFactory、Mapper接口扫描的XML配置示例。同时,可能需要添加事务管理的配置,这是整合中常见的部分。 还要注意用户提到的“极简”和“结构清晰”,所以配置应该避免冗余,只包含必要的部分。比如,数据源的配置需要数据库驱动、URL、用户名和密码;SqlSessionFactory需要数据源和MyBatis的配置路径;Mapper扫描使用MyBatis-Spring的MapperScannerConfigurer或者<mybatis:scan>标签。 此外,用户可能关心如何引入相关的依赖,比如MyBatis-Spring中间件、数据库驱动等,但用户的问题主要集中在配置文件示例,所以可能不需要详细列出依赖,但可以简要提及,如引用[1]提到的数据库驱动JAR包。 最后,需要生成相关问题,这些问题应该围绕配置文件的优化、数据源其他配置方式、注解替代XML的可能性,以及事务管理的重要性等方面。确保问题与用户的查询相关,并帮助其进一步学习。</think>### Spring与MyBatis整合配置文件示例 以下是基于MyBatis-Spring整合的**极简XML配置文件示例**,仅需一个配置文件即可完成核心整合,结构清晰且完整[^2]: ```xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mybatis-spring="http://mybatis.org/schema/mybatis-spring" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring.xsd"> <!-- 1. 配置数据源 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/test?useSSL=false"/> <property name="username" value="root"/> <property name="password" value="123456"/> </bean> <!-- 2. 配置SqlSessionFactory --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="mapperLocations" value="classpath:mapper/*.xml"/> </bean> <!-- 3. 自动扫描Mapper接口 --> <mybatis-spring:scan base-package="com.example.dao"/> <!-- 4. 开启注解驱动的事务管理 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"/> </bean> </beans> ``` ### 关键配置解析 1. **数据源配置** 使用`DriverManagerDataSource`定义数据库连接,需指定驱动类、URL、用户名和密码[^1]。 2. **SqlSessionFactoryBean** 将MyBatis的`SqlSessionFactory`与Spring容器绑定,依赖数据源和Mapper XML文件路径。 3. **Mapper接口扫描** 通过`<mybatis-spring:scan>`自动注册`base-package`下所有Mapper接口,无需手动声明每个Bean。 4. **事务管理** `DataSourceTransactionManager`提供声明式事务支持,与`@Transactional`注解配合使用。 ### 依赖要求 - **MyBatis-Spring**:核心整合包 - **数据库驱动**:如MySQL的`mysql-connector-java` - **Spring JDBC**:支持数据源和事务管理 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值