日期+序列构建系统唯一序列号(一)
来源:互联网 发布:经销商车销软件 编辑:程序博客网 时间:2024/05/22 12:24
项目中用到的流水号格式要求如:20170928000001,即当前年月日 + 自增序列构成
一、创建序列
create sequence sys_seqminvalue 1maxvalue 999999start whit 1increment by 1cache 50cycleNOORDER;
二、获取序列
<select id="selectSequence.sql" resultClass="string"> select sys_seq.nextval from dual</select>
三、拼接日期和序列
package sequence;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Date;import javax.annotation.Resource;import org.springframework.stereotype.Service;@Servicepublic class SerialServiceImpl implements SerialService {@Resourceprivate SequenceDao sequenceDao;//为了防止并发问题 这里利用ThreadLocal来保护DateFormat对象//当然也可以将DateFormat作为方法getSerial的局部变量,每次取都new一个private static final ThreadLocal<DateFormat> df = new ThreadLocal<DateFormat>() {@Overrideprotected DateFormat initialValue() {return new SimpleDateFormat("yyyyMMdd");}};@Overridepublic String getSerial() {String seq = sequenceDao.selectSequence();String date = df.get().format(new Date());//序列前需要填充0补足6位String serial = date + String.format("%06d", Integer.parseInt(seq));return serial;}}
改天设计一个可以按日、月或年复位的流水号。
阅读全文
0 0
- 日期+序列构建系统唯一序列号(一)
- 日期+序列构建系统唯一序列号(二)
- 获得Android设备的唯一序列号(一)
- 获得Android设备的唯一序列号(一)
- Android获取唯一标识(唯一序列号)
- 获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 获取Android设备唯一标识(唯一序列号)
- 如何获取Android手机的唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 如何获取Android唯一标识(唯一序列号)
- 在Eclipse里添加JDK源码
- 图案拉长字体发光
- Java api中文在线版
- JAVA设计模式之抽象工厂模式
- attention model
- 日期+序列构建系统唯一序列号(一)
- Partition List
- 过渡(Transition)面积大小切换
- Vue项目 其他
- java.lang.Object[] java.util.Collection.toArray()
- gradle管理javaweb项目配置仓库,解决依赖下载龟速
- web
- UVA 10815 【set的使用】【字符串模拟】
- matlab数据挖掘学习篇----数据特征分析