just do it;我这里要求是,每一种类型都要对应不同的流水号,互不影响。。。效果图
原理是:先判断这种类型的流水号是否在流水号表中存在,如果不存在,则让最大流水序号为1,并插入一条数据到流水号表中,如果存在,则需要更新最大流水号,在之前流水还上加一;谁需要源码的。。。可以留言联系我。。。到时给源码你们,不懂的,也可以咨询鄙人
生成流水号:需要一张流水号的表,专门记录这一种类型流水号的最大值 ,以下是表的结构以及部分表数据
另外,java中也需要用到一个封装好的java,类,只有四个属性,当然就是数据库字段的额属性了
然后最好是提供一个流水号辅助类,里面编写关于流水号操作的方法
package com.exedosoft.plat.action.official;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import org.apache.log4j.Logger;
public class FlowHelper {
Logger logger = Logger.getLogger(FlowHelper.class.getName());
String length=PropertyHelper.getProperties("flow_length");
/**
* 获取流水号
*
* @return
*/
public String getFileCodeNum(String fileCodeNum) {
String lastFileCode = "";
int totalLength = 4;
if(length!=null&&length.matches("\\d+")){
totalLength=Integer.parseInt(length);
}
int fileCodeLength = fileCodeNum.length();
for (int i = 0; i < totalLength - fileCodeLength; i++) {
lastFileCode += "0";
}
return lastFileCode + fileCodeNum;
}
public static void main(String[] args) throws Exception{
FlowHelper zbwtCreateFileBarCode=new FlowHelper();
// String test = zbwtCreateFileBarCode.getFileCodeNum("101");
// System.out.println(test);
String excelName=zbwtCreateFileBarCode.getFlowName(3);
System.out.println(excelName);
}
/**
* 根据要求获取流水号 最大的流水号