MyBatis 通用 Mapper 极其方便的使用MyBatis单表的增删改查,支持单表操作,不支持通用的多表联合查询。通用 Mapper 可以极大的方便开发人员。可以随意的按照自己的需要选择通用方法,还可以很方便的开发自己的通用方法。 3.4.0 更新内容:Example增加 for update 支持,仅能用于 selectByExample 和 selectCountByExample 方法 #210 Example.Criteria增加andAllEqualTo方法,将此对象的所有字段参数作为相等查询条件,如果字段为 null,则为 is null #206 增加参数checkExampleEntityClass,默认false用于校验通用 Example 构造参数 entityClass 是否和当前调用的 Mapper 类型一致 #201 增加参数useSimpleType,默认false,启用后判断实体类属性是否为表字段时校验字段是否为简单类型,如果不是就忽略该属性,这个配置优先级高于所有注解 增加参数simpleTypes,默认的简单类型在SimpleTypeUtil中,使用该参数可以增加额外的简单类型,通过逗号隔开的全限定类名添加 所有RuntimeException异常改为tk.mybatis.mapper.MapperException异常 所有 Update 方法添加@Options(useCache = false, useGeneratedKeys = false),fix #216 使用自定义的SelectKeyGenerator,防止有默认值时被替换掉 fix #213 将 MapperTemplate 属性改为 protected MBG 插件中 generatedKey 元素的 sqlStatement 属性可以配置为形如 select SEQ_{1} from dual 的 SQL,其中 {0} 代表小写的表名,{1} 是大写的表名
MBG 插件 generatedKey 新的用法示例,针对使用类似 Oracle 序列的方式: <generatedKey column="id"
sqlStatement="select SEQ_{1}.nextval from dual"
identity="false"
type="pre"/> 生成代码的效果: public class Author {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY,
generator = "select SEQ_AUTHOR.nextval from dual")
private Integer id;
} |