驽马十驾 驽马十驾

驽马十驾,功在不舍

目录
使用通用Mapper过程中的一些记录
/    

使用通用Mapper过程中的一些记录

开篇

通用Mapper是针对MyBatis的一款扩展类插件,可以简化XML部分的代码,通过动态生成的方式进行XML生成。

  • 极其方便的使用MyBatis单表的增删改查。
  • 支持单表操作,不支持通用的多表联合查询。

地址如下:https://gitee.com/free/Mapper

该文章主要是个人的一些小记录,备忘存在。

排序

错误代码:

example.orderBy(BaseEntity.Field.GMTUpdate + " desc");

正确方式为:

一是:通过注解 @OrderBy(value = "DESC")

二是:example.setOrderByClause("GMT_UPDATE DESC");注意此处是列名称,不是属性名。

处理oracle的null异常

在mybatis的配置文件中加入如下内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//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>

Oracle的序列值方法封装

public interface SequenceMapper
{
    @Select("select SEQ_${tableName}.nextval from dual")
    long getSequence(@Param("tableName") String tableName);
}

结语

核心思路:从内到外构造类型,一步一步来!

骐骥一跃,不能十步。驽马十驾,功在不舍。