`
silencelyn
  • 浏览: 19936 次
  • 性别: Icon_minigender_1
  • 来自: 温州
社区版块
存档分类
最新评论

mybatis公用代码抽取到单独的mapper.xml文件

xml 
阅读更多
同任何的代码库一样,在mapper中,通常也会有一些公共的sql代码段会被很多业务mapper.xml引用到,比如最常用的可能是分页和数据权限过滤了,尤其是在oracle中的分页语法。为了减少骨架性代码,通常将它们抽象到sql中,但是肯定又不能在每个mapper中也包含,这样就没有意义了。此时,可以将这部分移到专门的mapper.xml中,比如common.xml,其中包含如下:
<?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">
 
<mapper namespace="Common">
    <sql id="Common.pagingStart">
    </sql>
    <sql id="Common.pagingEnd">
        <![CDATA[ limit #{startWith,jdbcType=INTEGER},#{rows,jdbcType=INTEGER} ]]>
    </sql>
</mapper>


然后在具体的mapper.xml可以通过namespace进行引用,如下:
<select id="queryPage" resultMap="clientPage" parameterType="java.util.Map">
        <include refid="Common.pagingStart"/>
        <include refid="commonSelect"/>
            <!-- 这里有个额外的1是为了避免额外处理最后一个”,“ -->
        <include refid="commonFrom"/>
        <include refid="commonWhere"/>
          <if test="clientId != null" >
            and CLIENT_ID = #{clientId,jdbcType=VARCHAR}
          </if>
          <if test="clientName != null" >
            and CLIENT_NAME like '%${clientName}'
          </if>
          <if test="telephone != null" >
            and TELEPHONE = #{telephone,jdbcType=VARCHAR}
          </if>
        order by client_id
        <include refid="Common.pagingEnd"/>
    </select>



转自 http://www.cnblogs.com/zhjh256/p/6193278.html
分享到:
评论

相关推荐

    用java程序生成mybatis的mapper.xml和mapper.java文件

    本文将详细讲解如何使用Java程序生成Mybatis的mapper.xml和mapper.java文件,以便于简化开发过程,提高代码的可维护性和效率。 首先,理解mapper.xml和mapper.java的作用是关键。mapper.xml文件是Mybatis中的SQL...

    mybatis-3-config/mapper.dtd 解决mybatis头文件报错

    &gt;Window-&gt;prefenrence-&gt;XML-&gt;XML Catalog-&gt;User Specifiled Entreis-&gt;Add-&gt;Location(此处是你放dtd文件的位置例如:‪D:\mybatis\mybatis-3-config.dtd)-&gt;Key(如果更改config,此处应该是:-//mybatis.org//DTD ...

    idea工具中直接从mapper.Java文件中跳转到mapper.xml文件的插件,挺不错的

    对于使用MyBatis框架的开发者来说,MyBatis的Mapper接口与对应的Mapper XML文件之间的跳转是日常开发中的常见操作。标题提到的插件就是针对这一需求而设计的,它允许开发者在Mapper Java文件中直接跳转到对应的...

    自动生成Mybatis的 model mapper 和mapper.xml文件

    总结来说,Mybatis Generator是提高开发效率的重要工具,通过合理配置`generatorConfig.xml`文件,可以自动化地生成Mybatis所需的Model、Mapper接口和mapper.xml文件。在SSM项目中,这种自动化代码生成极大地降低了...

    springboot mybatis mapper.xml 配置

    &lt;groupId&gt;org.mybatis.spring.boot &lt;artifactId&gt;mybatis-spring-boot-starter &lt;version&gt;2.2.4 ``` 接下来,创建一个数据访问对象(DAO)接口,例如`UserMapper`,并使用`@Mapper`注解标记: ```java import ...

    mybatis联表查询mapper.xml

    本文将详细解析"mybatis联表查询mapper.xml"这一主题,包括如何在Mapper XML文件中实现主表与副表的一对多关联查询,以及涉及的实体类和DAO层的设计。 首先,我们要理解MyBatis中的Mapper接口和Mapper XML文件的...

    mybatis自动生成mapper.xml文件

    总的来说,SpringBoot整合MyBatis并自动生成Mapper.xml文件,大大提高了开发效率,降低了手动编写SQL和映射代码的工作量。同时,通过MBG的定制化功能,可以更好地适应项目需求,使代码更规范、更易于维护。

    mybatis Mapper.xml中传参多选 字符串形式逗号分隔 AND中拼接OR.rar

    Mapper.xml文件是Mybatis的核心组件,它包含了数据库操作的SQL语句和映射规则。 在处理字符串形式的多选参数时,我们通常会先在服务层将这些参数转换为Java集合,如List或Set。例如,如果用户选择的标签以逗号分隔...

    spring boot + mybatis +mapper.xml 项目

    本项目利用Spring Boot的自动配置特性,配合MyBatis作为持久层框架,以及Mapper.xml文件进行SQL映射,实现了数据访问的便捷性。下面将详细阐述这个项目中的关键知识点。 1. **Spring Boot**: Spring Boot是Spring...

    mybatis根据数据库实体自动生成mapper.xml文件

    1. **MyBatis Generator**: MyBatis Generator(MBG)是MyBatis官方提供的一个代码生成工具,它可以自动生成基于数据库表的Java实体类、Mapper接口和Mapper XML文件,大大提高了开发效率。首先,你需要在项目中引入...

    mybatis-3-mapper.dtd文件下载

    在 Mybatis 中,`mybatis-3-mapper.dtd` 文件扮演着至关重要的角色,它是 Mybatis 映射器接口的定义文件,用于验证 XML 映射文件的语法正确性。 `mybatis-3-mapper.dtd` 文件是基于 DTD(Document Type Definition...

    mybatis-3-mapper.dtd.zip

    你可以将这个压缩包中的`mybatis-3-mapper.dtd`文件复制到本地,并在MyBatis的配置文件中指定本地DTD文件的位置,这样即使没有网络,MyBatis也能正确解析XML映射文件。 为了做到这一点,你需要在MyBatis的配置文件...

    mybatis-3-mapper.rar

    解决这些问题后,开发者就能在编写MyBatis的XML映射文件时享受到IDE提供的便利,提高编码效率。同时,了解并掌握DTD在XML文件中的作用,对于理解MyBatis的工作原理和优化开发环境都是至关重要的。

    mybatis-3-config.dtd mybatis-3-mapper.dtd

    在MyBatis的配置和映射过程中,`mybatis-3-config.dtd`和`mybatis-3-mapper.dtd`是两个至关重要的文件,它们定义了XML配置文件的结构和语法规则。 首先,`mybatis-3-config.dtd`是MyBatis配置文件的DTD(Document ...

    MyBatis自动生成mapper.xml工具

    mybatis使用虽然灵活简单,但mapper.xml的配置却很繁琐。如果项目的实体表比较多,手工配置是不现实的。这个工具可以帮助自动后成model,dao,mapper.xml 使开发者从繁琐的mapper.xml映射中解放出来,把更多的精力投入...

    Mybatis-3-config-mapper.dtd

    总的来说,`mybatis-3-config.dtd` 和 `mybatis-3-mapper.dtd` 是Mybatis框架中不可或缺的部分,它们为XML配置文件提供了语义上的支持,使得开发者可以按照预定义的规则进行配置,从而更好地管理和操作数据库。...

    mybatis如何通过接口查找对应的mapper.xml及方法执行详解

    首先,当我们使用`SqlSession.getMapper()`方法来获取一个Mapper接口的实例时,例如`BookMapper bookMapper = SqlSession().getMapper(BookMapper.class)`,MyBatis是如何找到对应的mapper.xml文件并绑定接口方法的...

Global site tag (gtag.js) - Google Analytics