Mybatis框架(六)Mybatis的配置别名

在我们以前的Mybatis中引用pojo常常用以下方式:

<?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">
<!--namespace:绑定一个对应的Dao/Mapper接口-->
<mapper namespace="com.wst.dao.StuMapper">
    <!--select:查询语句-->
    <!--查询学生的全部信息-->
    <select id="getStuList" resultType="com.wst.pojo.Stu">
    select * from stu
  </select>
    <!--根据学生id查找学生的全部信息-->
    <select id="getStuById" resultType="com.wst.pojo.Stu" parameterType="int">
       /*定义sql*/
       select * from stu where id = #{id};
   </select>

     <!--插入信息-->
    <insert id="addStu" parameterType="com.wst.pojo.Stu">
        insert into stu (id,name,age,address) values (#{id},#{name},#{age},#{address});
    </insert>

<!--&lt;!&ndash;修改信息&ndash;&gt;-->
    <update id="updateStu" parameterType="com.wst.pojo.Stu">
        update stu set name = #{name},age=#{age},address=#{address} where id=#{id} ;
    </update>
<!--删除信息-->
    <delete id="deleteStu" parameterType="int">
        delete from stu where id = #{id};
    </delete>
</mapper>

比如在上面的配置中:
在这里插入图片描述
我们可以发现返回值的类型是com.wst.pojo.Stu、某些情况下参数类型也是com.wst.pojo.Stu。
如果多次使用到com.wst.pojo.Stu。就感觉十分的麻烦!!!
下面我们就来介绍有没有一种方法能把这些可以简化一下呢?

方法一:就是上面所写的那样。
方法二:使用类型别名(typeAliases)。
类型别名是为 Java 类型设置一个短的名字。 它只和 XML 配置有关,存在的意义仅在于用来减少类完全限定名的冗余。
于是针对上面的例子我们可以这样写:
在这里插入图片描述
进行上面的配置后就可以在StuMapper.xml中这样使用它:
在这里插入图片描述
方法三:使用指定一个包名,MyBatis 会在包名下面搜索需要的 Java Bean。
在这里插入图片描述
注:在没有注解的情况下,会使用 Bean 的首字母小写的非限定类名来作为它的别名。
那么在StuMapper.xml中这样使用它:
在这里插入图片描述
官网上要求使用类的类名,首字母小写。使用类名也是可以的。
在这里插入图片描述
方法四:使用注解的方式@Alias。
在实体类上面加上注解:
在这里插入图片描述
那么在StuMapper.xml中这样使用它:
在这里插入图片描述
另外:
在 MyBatis 的初始化过程中,系统自动初始化了一些别名:
在这里插入图片描述

发布了105 篇原创文章 · 获赞 30 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43759352/article/details/104552255