使用typeAliases配置别名

一.使用typeAlias单独配置别名

在执行select查询或insert添加的SQL语句时,都要在parameterType或resultType属性中写上完整的实体类路径,路径中需要包含完整的包名,示例代码如下:

<insert id="insert" parameterType="bean.Userinfo" useGeneratedKeys="true" keyProperty="id">

如果包名嵌套层级较多,则会出现大量冗余的配置代码,这时可以在mybatis-config.xml配置文件中使用<typeAliases>标签来简化。示例如下:

<configuration>
    <typeAliases>
          <!--type属性:完整的实体类 包路径;
              alias属性:实体类别名-->
        <typeAlias alias="userinfo" type="sqlmapping.Userinfo"/>
    </typeAliases>
</configuration>

这个别名可以在SQL映射文件中进行使用,示例代码如下:

<insert id="insert" parameterType="userinfo" useGeneratedKeys="true" keyProperty="id">

注意: 在引用别名时是不区分大小写的,比如如下代码也能正确得到运行。

parameterType="USERinfo"
resultType="USERINFo"

二.使用package批量配置别名

使用<typeAliases>虽然可以实现配置别名,但如果实体类的数量较多,则极易出现<typeAlias>配置爆炸,这种情况可以使用<package>标签来解决,它的原理就是扫描指定包下的类,这些类都被自动赋予了与类同名的别名,不区分大小写,别名中不包含包名。示例代码如下:

<configuration>
    <typeAliases>
        <package name="包名"/>
    </typeAliases>
</configuration>

在SQL映射文件中的使用同上一步。

注意: 如果在不同的包中出现相同实体类名的情况,在MyBatis解析XML配置文件时就会出现异常信息。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容