这里讲的是通过注解的方式来实现,非XML方式.
Options(useGeneratedKeys=true, keyProperty="id", keyColumn="id")
useGeneratedKeys:必须设置为true,否则无法获取到主键id。
keyProperty:设置为POJO对象的主键id属性名称。
keyColumn:设置为数据库记录的主键id字段名称。
完全的写法如下:
@InsertProvider(type = SplitterRecordDaoProvider.class,method ="addDownloadRecordSql")
@Options(useGeneratedKeys=true, keyProperty="id", keyColumn="id")
Integer addDownloadRecord(DownloadRecordEntity downloadRecordEntity);
这里要注意的是,返回的ID值,并不是通过addDownloadRecord这个方法的返回值返回,这个方法的返回值还是添加成功的条数,主键ID值通过传过来的参数 downloadRecordEntity 返回, 调用downloadRecordEntity.getId(),可以直接获取ID的值.