MyBatis通用Mapper技巧

时间:2021-07-10 09:30:12
一、排序错误代码:example.orderBy(BaseEntity.Field.GMTUpdate + " desc");正确方式:一是:通过注解 @OrderBy(value = "DESC")二是:example.setOrderByClause("GMT_UPDATE DESC");注意此处是列名称,不是属性名。
二、处理oracle的null异常
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><settings><setting name="cacheEnabled" value="false"/><!--解决插入null的时候报错问题--><setting name="jdbcTypeForNull" value="NULL"/></settings></configuration>
三、 mapper的selectOne返回值可能是null,获取的结果应做null判定。
public interface SequenceMapper{@Select("select SEQ_${tableName}.nextval from dual")int getSequence(@Param("tableName") String tableName);}