本文主要是介绍Orcale 12 + mybatis plus同时实现键值用户输入和自增,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
需求
因需求需要,迁移数据库,由原来的db2迁移到oracle。同时上线后db2与oracle会并行运行一段时间,同时保证数据一致性。
于是需要实现新系统创建服务:
传入键值时,按键值插入到数据库;
未输入时,键值按数据库自增形式插入。
实现
建表语句
CREATE TABLE 表名 (ID NUMBER(10,0) GENERATED BY DEFAULT AS IDENTITY ,NAME VARCHAR2(10),PRIMARY KEY(ID)
);
Java代码
对应数据库的dto
@Data
@TableName("表名")
public class Dto {@TableField(value = "数据库对应字段名")private Long id;
}
PS:
这么做呢,mybatis自带的selectById类,直接操作键值的方法就不能用了。
不过么事
...LambdaQueryWrapper<DBO> queryWrapper = getWrapperByKey(id);DBO dbo = mapper.selectOne(queryWrapper);
...public LambdaQueryWrapper<DBO> getWrapperByKey(Long id) {LambdaQueryWrapper<DBO> queryWrapper = new QueryWrapper<DBO>().lambda();queryWrapper.eq(DBO::getId,id);return queryWrapper ;
}
这篇关于Orcale 12 + mybatis plus同时实现键值用户输入和自增的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!