Springboot MyBatis CRUD(XML)

发布于:2025-07-05 ⋅ 阅读:(19) ⋅ 点赞:(0)

一、XML映射配置

       如果需要实现复杂的SQL功能,建议使用XML来配置映射语句,也就是将SQL语句写在XML配置文件中。而使用Mybatis的注解方式,主要是来完成一些简单的增删改查功能。

在Mybatis中使用XML映射文件方式开发,必需符合规范:

  1. XML映射文件的名称与Mapper接口名称一致,并且将XML映射文件和Mapper接口放置在相同包下(同包同名)

  2. XML映射文件的namespace属性为Mapper接口全限定名一致

  3. XML映射文件中sql语句的id与Mapper接口中的方法名一致,并保持返回类型一致。

 二、XML配置文件操作

1、创建XML映射文件

  在resources右键| New | Directory |    com/hlx/mapper

2、编写XML映射文件

 MyBatis 中文网 官网:

<?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="">

</mapper>

3、XML映射文件的namespace属性为Mapper接口全限定名

   选中DeptMapper右键 | Copy /Paste Special  | Copy Reference

<?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="org.hlx.mapper.DeptMapper">

</mapper>

4、XML映射文件中sql语句的id与Mapper接口中的方法名一致,并保持返回类型一致

<?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="org.hlx.mapper.DeptMapper">

    <select id="findAll" resultType="org.hlx.pojo.Dept">
            select * from dept
    </select>
</mapper>

  完整的映射配置文件

<?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="org.hlx.mapper.DeptMapper">

<!--    resultType:查询返回单条数据的类型-->
    <select id="findAll" resultType="org.hlx.pojo.Dept">
            select * from dept
    </select>

    <!--    添加-->
    <insert id="addDept" parameterType="org.hlx.pojo.Dept">
            insert into dept(id,name) values (#{id},#{name})
    </insert>

    <!--    删除-->
    <delete id="deleteById" parameterType="int">
            delete from dept where id = #{id}
    </delete>

    <!--    修改-->
    <update id="updateDept" parameterType="org.hlx.pojo.Dept">
            update dept set name = #{name} where id = #{id}
    </update>
</mapper>

注意:注解或XML只能选一个,切不可同时配置。


网站公告

今日签到

点亮在社区的每一天
去签到