实现自增型业务编号

实现自增型业务编号
1、创建数据库(用于存储编号最大值)
maxSerialNum: 当前业务编号最大值
date:修改日期
2、编写业务编号产生程序
public class MaterialEncode{
@Autowired
private SerialNumberService serialNumberService;

private static final AtomicInteger atomicInteger=new AtomicInteger();
private final int INIT_SERIAL_NUM=0;

@PostConstruct
public void initMaxNum(){
try{
int maxSerialNum=serialNumberService.getByID(1);
if(maxSerialNum<INIT_SERIAL_NUM){
maxSerialNum=INIT_SERIAL_NUM;
}
atomicInteger.set(maxSerialNum);
}catch(Exception e){
logger.error(“初始化流水号最大值异常”,e)
}
}

public String getNewAutoNum(String baseClassify){
int serialNum=atomicInteger.incrementAndGet();
SimpleDateFormat template=new SimpleDateFormat(“yyyyMMdd”);
String datetime=template.format(new java.util.Date());
String serialNumStr=baseClassify+datetime+String.format("%06d", serialNum);
}
}
3、调用业务编号产生程序
String serialNum=MaterialEncode.getNewAutoNum(""101010);

猜你喜欢

转载自blog.csdn.net/qq_27474555/article/details/87210191
今日推荐