数据库主键按照固定前缀生成工具类
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); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决