数据库主键按照固定前缀生成工具类

Posted javahr

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库主键按照固定前缀生成工具类相关的知识,希望对你有一定的参考价值。

package com.sc.util;

public class TableIdGenerator {

    /**
     * str必填,形如SUA0000046
     * beginIndex必填,从英文字符开始的位数,例如SUA0000046,就是从3开始
     * @param str
     * @param beginIndex
     * @return
     */
     public static String generatorId(String str,int beginIndex) {
        String leftStr=str.substring(0,beginIndex);//前半部分英文字符
        String rigthtStr=str.substring(beginIndex);//前半部分数字字符
        int len=rigthtStr.length();//数字总位数
        int rightInt=Integer.parseInt(rigthtStr)+1;
        String s=rightInt+"";
        int len1=s.length();
        
        
        if(len>len1){
            int i=len-len1;
            for (int j = 0; j < i; j++) {
                leftStr+="0";
            }
            leftStr+=rightInt;
        }else{
            leftStr+=rightInt;
        }
        return leftStr;
        
     }
     
     public static void main(String[] args) {
        String s= TableIdGenerator.generatorId("RW_0009", 3);
        System.out.println(s);
    }
    
}

 

以上是关于数据库主键按照固定前缀生成工具类的主要内容,如果未能解决你的问题,请参考以下文章

生成主键的工具类

如何按照我们在 mvc 代码优先方法中的模式制作自动生成的主键

分布式场景全局唯一ID生成工具类(非雪花算法)

分布式场景全局唯一ID生成工具类(非雪花算法)

UniqueKeyUtil 主键工具类

intentdefinition 生成代码中的类前缀