zoukankan      html  css  js  c++  java
  • Mybatis的mapper注册

    既然 MyBatis 的行为已经由上述元素配置完了,我们现在就要定义 SQL 映射语句了。但是首先我们需要告诉 MyBatis 到哪里去找到这些语句。 Java 在自动查找这方面没有提供一个很好的方法,所以最佳的方式是告诉 MyBatis 到哪里去找映射文件。你可以使用相对于类路径的资源引用, 或完全限定资源定位符(包括 file:/// 的 URL),或类名和包名等。例如:


    <!-- Using classpath relative resources -->
    <mappers>
      <mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
      <mapper resource="org/mybatis/builder/BlogMapper.xml"/>
      <mapper resource="org/mybatis/builder/PostMapper.xml"/>
    </mappers>

    <!-- Using url fully qualified paths -->
    <mappers>
      <mapper url="file:///var/mappers/AuthorMapper.xml"/>
      <mapper url="file:///var/mappers/BlogMapper.xml"/>
      <mapper url="file:///var/mappers/PostMapper.xml"/>
    </mappers>

    <!-- Using mapper interface classes -->
    <mappers>
      <mapper class="org.mybatis.builder.AuthorMapper"/>
      <mapper class="org.mybatis.builder.BlogMapper"/>
      <mapper class="org.mybatis.builder.PostMapper"/>
    </mappers>

    <!-- Register all interfaces in a package as mappers -->
    <mappers>
      <package name="org.mybatis.builder"/>
    </mappers>

    上述方式1和2是XML定义,3和4则是注解定义


    XML定义是常用的方式,用法如下:

        <select id="testMyBatisWorks" resultType="java.util.HashMap">
                 <![CDATA[  
                    {call pQueryAsyncNoticeList (
                            #{0,mode=IN,jdbcType=INTEGER}
                        )
                    }  
                ]]>  
            </select>


    注解则是:

        /**
             * 【proc列表】用存储过程查询得到列表
             * @param asyncStatus
             * @return
             */
            @Select("exec pQueryAsyncNoticeList #{asyncStatus}")
            @Options(statementType=StatementType.CALLABLE)
            List<Map<String, Object>> getList2(int asyncStatus);


    Type interface XXXMapper is not known to the MapperRegistry.的解决办法。

  • 相关阅读:
    day19 MRO C3算法 super()
    日志的处理
    day18 约束 异常
    Android-多线程和进程
    Android-多线程Handler
    hdu 1561 树形背包 选k个最大价值
    poj 1947 树形背包 (删边)
    hdu 1011 树形背包
    poj 1155 树形背包
    hdu 3535 (最少1,最多1,任意)(背包混合)(好题)
  • 原文地址:https://www.cnblogs.com/tiancai/p/9810553.html
Copyright © 2011-2022 走看看