MyBites别名使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MyBites别名使用相关的知识,希望对你有一定的参考价值。

我们在使用MyBites的时候发现parameterType和resultType的时候如果引用的是一个实体类需要写全包名+具体类名才可以,如下:

<insert id="insertUser" parameterType="cn.core.domain.User" >
        insert into user values(#{user_id},#{uname},#{addr},#{age})
</insert>

如上,参数里需要写全实体类路径才可以。怎么才能简化我们的开发呢?

使用别名即可解决上述的问题。

找到我们sqlMapConfig.xml文件,在configuration节点里添加一段别名的配置信息即可,下面是我整个sqlMapCaonfig文件信息:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!-- 定义别名 -->
    <typeAliases>
        <typeAlias type="cn.core.domain.User" alias="User"/>
    </typeAliases>
        
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED"><!-- 指定类型为连接池  -->
            <!--数据源信息  -->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/test?characterEncoding=utf-8"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="cn/core/domain/User.xml" />
    </mappers>
</configuration>

注意:重点是在<typeAliases>这个节点上,通过上面的配置,在我们的具体的业务配置文件中就可以这样写了

<!-- 添加 -->
<insert id="insertUser" parameterType="User" >
      insert into user values(#{user_id},#{uname},#{addr},#{age})
</insert>

看无论是parameterType还是resultType都可以直接引用我们的别名了。

 

以上是关于MyBites别名使用的主要内容,如果未能解决你的问题,请参考以下文章

springboot 使用mybites作为持久层编写webservice问题?

在片段着色器中绘制别名像素完美线?

Java - MyBites 逆向工程

模拟实现MyBites中通过SQL反射实体类对象功能

MyBites学习第一讲,增删改查

使用Mac命令别名,提升工作效率