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;
}

這樣就配置好了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM