MyBatis--3(Mybatis中的XML映射文件,插件MybatisX)

1.XML文件定义规范

  1. XML映射文件的名称与Mapper接口名称一致,并且将XML映射文件Mapper接口放置在相同包下(同包同名)。
  2. XML映射文件的namespace属性为Mapper接口全限定名一致。
  3. XML映射文件中sql语句的id与Mapper接口中的方法名一致,并保持返回类型一致。

    以条件查询为例:
  • mapper中的代码:
   @Mapper
   public interface EmpMapper {
   public List<Emp> list (String name, Short gender , LocalDate begin , LocalDate end);
	}
  • XML映射文件中的代码:
//开头部分代码可以从mybatis官网copy
<?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.itheima.mapper.EmpMapper">  //全类名
    <select id="list" resultType="com.itheima.pojo.Emp">  
	//sql语句的id与Mapper接口中的方法名一致
	//保持返回类型一致
        # resultType:单条记录的封装类型,如果是对象,则赋为全类名
        select * from emp where name like concat('%', #{name}, '%') and gender = #{gender}
          and entrydate between #{begin} and #{end} order by update_time desc
    </select>
</mapper>

2.插件MybatisX

  • MybatisX是一款基于IDEA的快速开发Mybatis的插件,为效率而生。

3.讨论(使用注解还是XML文件映射)

  • 使用Mybatis的注解,主要是来完成一些简单的增删改查功能。
  • 如果需要实现复杂的SQL功能,建议使用XML来配置映射语句。
  • 参考中文官网

使用注解来映射简单语句会使代码显得更加简洁,但对于稍微复杂一点的语句,Java 注解不仅力不从心,还会让你本就复杂的 SQL 语句更加混乱不堪。 因此,如果你需要做一些很复杂的操作,最好用 XML 来映射语句。
选择何种方式来配置映射,以及认为是否应该要统一映射语句定义的形式,完全取决于你和你的团队。 换句话说,永远不要拘泥于一种方式,你可以很轻松的在基于注解和 XML 的语句映射方式间自由移植和切换。

猜你喜欢

转载自blog.csdn.net/m0_63144319/article/details/131034030