勿谓今日不学而有来日,勿谓今年不学而有来年。
日月逝矣,岁不我延。

Mybatis接口动态代理

接口动态代理要求

  1. namespace与接口的全路径相同
  2. Sql的id与接口方法名相同
  3. parameterType与方法传入参数相同
  4. resultType与方法返回值相同

实例:

映射文件

 <mapper  namespace="cn.llanc.mapperDao.UserDaoMapper">
     主键返回 id set给User.id
     <select id="getUserById" parameterType="int" resultType="cn.llanc.pojo.User">
        SELECT * FROM `user` WHERE id = #{id}
     </select>
 </mapper>

接口

/**
 * 根据ID获取用户
 * @param id
 * @return
 */
User getUserById(Integer id);

属性和别名

优先读取property重复时以resources的属性为准
 <properties resource="jdbc.properties">
     <property name="jdbc.password" value="roott"></property>
 </properties>
定义别名
 <typeAliases>
     单个别名定义
     <typeAlias type="cn.llanc.pojo.User" alias="user" />
     包扫描 默认包下的类的别名为类名不区分大小写
     <package name="cn.llanc.pojo"/>
 </typeAliases>

映射文件引入

<!--映射文件-->
<mappers>
    <!--<mapper resource="UserDao.xml" />-->

    <!--映射文件类扫描器
        1、接口与映射文件在相同目录
        2、接口与映射文件名相同
    -->
    <!--<mapper class="cn.llanc.mapperDao.UserDaoMapper"/>-->

    <!--映射文件包扫描器
        1、接口与映射文件在相同目录
        2、接口与映射文件名相同
    -->
    <package name="cn.llanc.mapperDao"/>
</mappers>

可能会遇到的问题:IDEA读取不到src下的Mybatis的映射文件 IDEA 中src下xml等资源文件无法读取

源码参考:https://github.com/llanc/Mybatis

赞(1)
未经允许不得转载:喋喋不休 » Mybatis接口动态代理

评论 抢沙发

评论前必须登录!

 

精品网站

有券无忧电脑壁纸精选