`

MyBatis Generator产生的Example类

 
阅读更多

from:http://openwares.net/database/mybatis_generator_example.html

Example类用于构造复杂的筛选条件。

基本概念

    • Criterion

Criterion是最基本,最底层的Where条件,用于字段级的筛选,feild用于指代字段名字,列举如下:

只有一个条件,不需要其他参考值
feild IS NOLL
feild IS NOT NULL

与一个参考值进行算数运算
feild > value
feild >= value
feild = value
feild <> value
feild <= value
feild < value

与一个参考值进行模糊查询,参值中的%,?只能在构造查询条件时手动指定。

feild LIKE value
feild NOT LIKE value

介于两个参考值之间

feild BETWEEN value AND secondValue

在或不在一个参考值集合中,item来自于value集合

feild IN (item,item,item,...)
feild NOT IN (item,item,item,...)

MyBatis Generator会为每个字段产生如上的Criterion,如果表的字段比较多,产生的Example类会十分庞大。理论上通过Example类可以构造你想到的任何筛选条件。

    • Criteria

Criteria包含一个Cretiron的集合,每一个Criteria对象内包含的Cretiron之间是由AND连接的,是逻辑与的关系。

    • oredCriteria

Example内有一个成员叫oredCriteria,是Criteria的集合,就想其名字所预示的一样,这个集合中的Criteria是由OR连接的,是逻辑或关系。oredCriteria就是ORed Criteria。

用法

示例来自官方文档

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
TestTableExample example = new TestTableExample();
 
  example.or()
    .andField1EqualTo(5)
    .andField2IsNull();
 
  example.or()
    .andField3NotEqualTo(9)
    .andField4IsNotNull();
 
  List<Integer> field5Values = new ArrayList<Integer>();
  field5Values.add(8);
  field5Values.add(11);
  field5Values.add(14);
  field5Values.add(22);
 
  example.or()
    .andField5In(field5Values);
 
  example.or()
    .andField6Between(3, 7);

or()方法会产生一个新的Criteria对象,添加到oredCriteria中,并返回这个Criteria对象,从而可以链式表达,为其添加Criterion。
产生的动态SQL是这样的:

1
2
3
4
where (field1 = 5 and field2 is null)
     or (field3 <> 9 and field4 is not null)
     or (field5 in (8, 11, 14, 22))
     or (field6 between 3 and 7)

其他

Example类的distinct字段用于指定DISTINCT查询。

orderByClause字段用于指定ORDER BY条件,这个条件没有构造方法,直接通过传递字符串值指定。

 

example.setOrderByClause(" assignTime DESC");

分享到:
评论

相关推荐

    mybatis generator eclipse插件的安装

    MyBatis Generator(MBG)是一款强大的自动化代码生成工具,它可以极大地提高开发效率,通过配置文件自动生成MyBatis的映射文件、实体类以及DAO层的Java代码。Eclipse作为广泛使用的Java集成开发环境,提供了对MBG...

    MybatisGenerator代码生成器(可查询指定字段)

    MybatisGenerator本身是没有提供查询指定字段的,例如数据库有5个字段,我想查询其中3个字段的全部记录,这是做不到的。经过研究MybatisGenerator实现原理,在保证原有功能的基础上,实现了生成查询指定字段的相关...

    通过mybatis generator反向工程生成pojo及mapper类 带序列化插件

    MyBatis Generator是一款强大的自动化代码生成工具,它可以帮助开发者快速生成Java实体类(POJO)、Mapper接口和XML映射文件,极大地提高了开发效率。在本主题中,我们将深入探讨如何利用MyBatis Generator进行反向...

    eclipse mybatis generator插件及使用

    MyBatis Generator可以帮助开发者自动生成Java实体类、Mapper接口及XML配置文件,从而节省了大量的手动编码时间,提高了开发效率。这款插件基于MyBatis框架,与Eclipse集成,为Java开发者提供了便捷的数据库操作体验...

    mybatis_generator使用手册

    MyBatis Generator 是一个开源的代码生成工具,基于 MyBatis 框架,可以根据数据库表结构生成对应的 Java 代码,包括实体类、DAO 层、Service 层等。使用 MyBatis Generator 可以大幅提高开发效率,减少重复劳动,...

    Mybatis Generator eclipse 插件

    Mybatis Generator是一款强大的自动化代码生成工具,主要用于简化Mybatis框架的使用,它可以自动生成SQL映射文件、Mapper接口、实体类以及DAO实现类等代码,极大地提高了开发效率。在Eclipse环境中,我们可以安装...

    MybatisGenerator

    MybatisGenerator是一款强大的工具,它专门用于自动化生成Mybatis框架中的关键组件,包括Mapper映射文件、DAO接口、Model实体类等。这个工具极大地提升了开发效率,减少了手动编写这些重复性代码的时间,使得开发者...

    eclipse MyBatis Generator 1.3.2 离线安装包

    MyBatis Generator(MBG)是一款强大的工具,用于自动生成MyBatis框架的SQL映射文件、Java模型类以及DAO接口。它极大地提高了开发效率,减少了手动编写这些基础代码的工作量。Eclipse MyBatis Generator 1.3.2 离线...

    eclipse的maven项目中,通过mybatisgenerator工具自动生成实体类和Mapper

    ### Eclipse Maven项目中利用MyBatis Generator自动生成实体类与Mapper #### 一、概述 在Java Web开发中,特别是使用MyBatis框架时,频繁地编写DAO层接口(Mapper)以及对应的实体类(Entity)是一项既繁琐又容易...

    mybatis-generator.zip(生成代码模板)

    MyBatis Generator(MBG)是一个强大的工具,用于自动生成Java源代码和XML配置文件,大大简化了开发人员的工作,特别是在处理与数据库交互时。它根据数据库中的表信息,能够生成DAO层、Model层以及Mapper XML文件,...

    mybatis-generator-core-1.3.2

    Mybatis Generator Core 1.3.2 是一个强大的工具,用于自动生成Mybatis的映射文件、模型类和DAO接口,极大地提高了开发效率。这个版本包括了Mybatis Generator的1.3.2版本的jar包,它是一个Java库,能够自动化生成...

    mybatisgenerator.rar

    在"mybatisgenerator.rar"这个压缩包中,很可能包含MBG的配置文件、数据库连接信息、以及生成代码的模板。配置文件(通常为`mybatis-generator-config.xml`)是MBG的核心,它定义了如何连接数据库、选择哪些表进行...

    MyBatis Generator Tool工具以及使用方法

    MyBatis Generator Tool是一款强大的自动化代码生成工具,它极大地简化了MyBatis框架中SQL映射文件、Mapper接口以及实体类的编写工作。通过自定义配置文件,Generator可以根据数据库表结构自动生成对应的Java代码,...

    MyBatis Generator自定义插件实现自定义Mapper

    MyBatis Generator是一款强大的自动化工具,它可以帮助开发者自动生成MyBatis框架的Mapper接口、XML配置文件以及对应的实体类,极大地提高了开发效率。在实际项目中,为了满足特定需求或提高代码复用性,我们有时...

    MyBatis Generator Tool

    例如,你可以设置generateBaseModel来生成基础的JavaBean类,或者设置generateExampleClass来生成用于查询的Example类。 4. **generatedMapper**: 这部分配置会生成与数据库交互的Mapper接口。你可以选择是否生成...

    mybatis-generator

    MyBatis Generator(MBG)是一个强大的工具,用于自动生成MyBatis的SQL映射文件、Java模型类和DAO接口。这个工具极大地提高了开发效率,减少了手动编写这些基础代码的工作量。MBG支持多种数据库,包括MySQL,它可以...

    使用MyBatis Generator自动创建代码

    在Java开发中,MyBatis Generator基于数据库表信息,能够自动化地生成MyBatis的XML映射文件、Java的DAO接口以及实体类。这样,开发者就可以专注于业务逻辑,而不需要花费大量时间在基础的 CRUD(创建、读取、更新、...

    利用MyBatis Generator自动创建代码

    MyBatis Generator(MBG)是一款强大的工具,它能够自动生成MyBatis框架相关的Java代码,包括实体类、Mapper接口及XML配置文件等,极大地提高了开发效率。在数据库表创建完成后,通过MBG,开发者无需手动编写这些...

    mybatisGenerator代码自动生成工具

    Mybatis Generator是一款强大的代码生成工具,它可以帮助开发者自动创建基于Mybatis框架的SQL映射XML文件、实体类以及Mapper接口,极大地提高了开发效率。在SpringBoot项目中,结合Maven构建工具,我们可以轻松地...

    MyBatis generator

    Mybatis Generator 根据数据库自动生成相关对象及接口,默认不支持分页功能,通过plugin得以实现,使用方式,在generatorconfig.xml里引用即可: &lt;context id="MysqlContext" targetRuntime="MyBatis3" ...

Global site tag (gtag.js) - Google Analytics