MyBatis-- example

概述

example是MyBatis数据层框架中的一个工具,可以帮我们完成sql语句中where条件句的书写,相当于where后面的部分,我们可以根据不同的条件来查询和操作数据库,简化书写sql的过程。

用MyBatis的逆向工程可以自动生成Example类。

Example类的生成

在generatorConfig.xml 文件中用表名生成对应的实体类时将生成Example的信息都变为true即可。

如:

  enableCountByExample="true"

  enableUpdateByExample="true"

  enableDeleteByExample="true"

  enableSelectByExample="true"

  selectByExampleQueryId="false"

示例:

<table tableName="product" domainObjectName="Product" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="true" selectByExampleQueryId="false">

<property name="my.isgen.usekeys" value="true"/>

<property name="useActualColumnNames" value="true"/>

<generatedKey column="id" sqlStatement="JDBC"/>

</table>

Example类的具体用法

1.xxxExample.java类的属性含义

每个实体类都对应一个xxxExample.java类,这个类可以用来自定义sql,用Mybait自动生成工具生成了这个类后,可以看到类里面一般有这些属性:

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

distinct: 是用来指定是否要去重查询的,true为去重,false不去重。

oredCriteriia:是用来指定查询条件的。

2.内部类 Criteria

Example.java中包含一个static 的内部类 Criteria ,在Criteria中有很多方法,主要是定义SQL 语 句where后的查询条件,Criterion是最基本的Where条件,针对字段进行筛选。

mapper接口中的函数及方法

方法

功能说明

int countByExample(UserExample example) thorws SQLException

按条件计数

int deleteByPrimaryKey(Integer id) thorws SQLException

按主键删除

int deleteByExample(UserExample example) thorws SQLException

按条件查询

String/Integer insert(User record) thorws SQLException

插入数据(返回值为ID)

User selectByPrimaryKey(Integer id) thorws SQLException

按主键查询

ListselectByExample(UserExample example) thorws SQLException

按条件查询

ListselectByExampleWithBLOGs(UserExample example) thorws SQLException

按条件查询(包括BLOB字段)。只有当数据表中的字段类型有为二进制的才会产生。

int updateByPrimaryKey(User record) thorws SQLException

按主键更新

int updateByPrimaryKeySelective(User record) thorws SQLException

按主键更新值不为null的字段

int updateByExample(User record, UserExample example) thorws SQLException

按条件更新

int updateByExampleSelective(User record, UserExample example) thorws SQLException

按条件更新值不为null的字段

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值