mybatis-plus使用Oracle函数生成主键
Posted 火光闪耀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis-plus使用Oracle函数生成主键相关的知识,希望对你有一定的参考价值。
函数的调用方式为:
select pkg1.fun1 from dual;
mybatis-plus一般会使用的主键生成策略为:
@Bean
public OracleKeyGenerator oracleKeyGenerator(){
return new OracleKeyGenerator();
}
此处由于要使用自定义主键生成策略,所以就不需要以上Bean
了。
自定义主键生成策略:
@Slf4j
@Component("mybatisPlusKeyGenerator")
public class MybatisPlusKeyGenerator implements IKeyGenerator {
@Override
public String executeSql(String incrementerName) {
log.info("执行自定义Key生成器,参数:{}",incrementerName);
return "select pkg1.get_key_id from dual";
}
}
然后在数据库实体对象上添加序列注解即可:
@TableName("tablename")
@KeySequence("mybatisPlusKeyGenerator")
public class User{
@TableId(value = "id", type = IdType.INPUT)
private Long id;
@TableField("name")
private String name;
}
这样就配置好了。
以上是关于mybatis-plus使用Oracle函数生成主键的主要内容,如果未能解决你的问题,请参考以下文章
MyBatis-Plus--使用雪花算法生成主键ID--使用/分析
MyBatis-Plus 设置Oracle 自增长序列(Sequence)