`
zuzong
  • 浏览: 116380 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

一个循环流水号实现,求评

阅读更多
给了个需求,要求做一个1 - 999999的循环的流水号生成方法,小弟没做个类似的东西,摸索着写了个,特来求评,还望赐教

	/**
	 * 流水号
	 */
	private static volatile int serialNumber = 0;
	/**
	 * 生成流水号
	 * 从1 - 999999,不足六位,从右往左补0
	 * @return
	 */
	public static synchronized String generateSerialNumber(){
		int n = serialNumber = ++serialNumber;
		if(n == (999999 + 1)){
			serialNumber = n = 1;
		}
		
		StringBuffer strbu = new StringBuffer(6);
		strbu.append(n);
		for(int i=0, length=6-strbu.length(); i<length; i++){
			strbu.insert(0, 0);
		}
		
		return strbu.toString();
	}


生成的数字测过,没问题,就是不知道这么写在多线程时靠不靠谱,当并发多大的时候,会出问题吗?
分享到:
评论
1 楼 lysino 2011-09-23  
若把此问题交给oracle的sequence来解决岂不是很简单,而且还可以支持多应用服务器的情况

相关推荐

    单片机左右循环流水灯

    本文将对C51系列单片机进行一次应用上的探索,具体将介绍如何通过编程实现一个简单而有趣的左右循环流水灯设计。 在硬件方面,我们选择了8个LED灯,它们各自代表不同的颜色,如红色、蓝色、绿色和黄色,通过单片机...

    实现8个LED流水灯汇编语言程

    流水花样表是一个数据表,它存储了流水灯的花样数据。该表由多个字节组成,每个字节代表一个LED的点亮状态。程序使用MOVC指令来读取流水花样表中的数据,并将其送到P1口,以实现流水灯的花样效果。 5. 程序的优点和...

    简易流水灯的循环

    运用循环语句实现流水灯的循环

    matlab实现循环谱

    总的来说,MATLAB的循环谱算法实现是一个综合了信号处理理论、数值计算和可视化技术的过程,能够有效地分析具有循环平稳特性的数据,从而提取关键信息并进行参数估计。在实际应用中,理解并掌握这一技术对于解决涉及...

    51单片机使用循环左移_crol_(a,b)和循环右移函数_cror_(a,b)实现双向流水灯

    51单片机在工程中包含intrins.h头文件,使用循环左移_crol_(a,b)和循环右移函数_cror_(a,b)实现双向流水灯

    LED流水灯循环移动程序

    程序的核心部分是`main()`函数,它包含了一个无限循环,使得流水灯效果可以持续不断地运行。首先,`LED=0x01;`这一行代码将P1口的最低位设置为1,使最右侧的LED亮起。接下来的`while(1)`循环会一直执行,直到程序被...

    使用for循环实现全排列

    使用for循环实现全排列是最简单最基础的一个全排列的过程,其他的全排列思想都是出自此处。

    基于AVR单片机的循环流水灯实验

    在电子工程领域,基于AVR单片机的循环流水灯实验是初学者和专业人士学习微控制器编程和硬件交互的一个常见项目。这个实验旨在帮助开发者掌握基本的数字逻辑、单片机控制以及LED显示技术。AVR单片机是Atmel公司(现已...

    VHDL多路循环流水灯

    在这个项目中,我们利用VHDL语言来描述和实现一个具有特定功能的流水灯控制器。 首先,我们要理解VHDL(Very High Speed Integrated Circuit Hardware Description Language)是硬件描述语言,它不仅能够描述硬件的...

    跑马灯或者流水灯电路设计 跑马灯或者叫“流水灯”:实现 LED 灯的循环移动

    跑马灯或者叫“流水灯”:实现 LED 灯的循环移动 可采用模块化设计:分成时钟产生模块,移位模块、LED 驱动模块、模式切换模块 具体的流水灯数目自选 是否可以切换模式自选 模式的个数自选 模式:指流水灯的花式,...

    用fpga实现8个led循环亮,按键可以控制其随时停止和开始

    在这个实验中,我们利用FPGA来实现一个有趣的功能:控制8个LED循环点亮,并通过按键进行启动和停止操作。这个设计可以作为一个基础的数字逻辑控制系统的学习案例,让我们深入探讨其工作原理。 首先,我们要了解FPGA...

    一个简单的sql循环语句脚本

    本话题将详细讲解一个简单的SQL循环语句脚本及其相关知识。 一、SQL循环语句概述 SQL循环语句主要包括WHILE循环和FOR循环,它们允许我们在满足特定条件时重复执行一段代码块。在PL/SQL和T-SQL中,还有BEGIN-END...

    ViewPager实现循环滚动切换Fragment

    在这个场景下,"ViewPager实现循环滚动切换Fragment"是一个常见的需求,尤其是在轮播广告或者无限滚动的效果中。然而,ViewPager本身并不直接支持循环滚动,因此需要进行额外的定制化工作。 首先,我们需要了解...

    单片机流水灯程序 p1口流水灯实现程序,汇编生成

    每个循环迭代,都会改变一个特定的LED状态,然后延时一段时间,使得视觉上呈现出灯“流动”的效果。 3. 端口操作:使用MOV指令来改变P1口的值,控制LED灯的亮灭。例如,如果要亮起第n个LED,可以将二进制位移操作与...

    单片机流水灯循环显示三次后全亮

    主函数中,我们使用一个循环来控制流水灯的显示,每次循环点亮一个LED,完成一轮后,所有LED全亮,维持一段时间后再开始下一轮。当完成三次循环后,程序结束。 在实际操作中,需要根据所使用的单片机型号和LED的...

    C利用循环左移函数流水灯

    在这个案例中,"C利用循环左移函数流水灯"是一个使用C语言编写的程序,旨在51系列单片机上实现流水灯效果。51单片机是8位微处理器的一种,因其内部结构简单、应用广泛而被广泛采用。 首先,让我们了解一下流水灯的...

    单片机用P1口控制的流水灯

    在这个项目中,我们使用了单片机的P1口来实现流水灯的控制,P1口是单片机上的一个并行输入/输出端口,通常包含8个可独立设置为输入或输出的引脚。 首先,我们要了解单片机的基本结构。单片机,也称为微控制器,是一...

    labview跑马灯用while循环实现

    使用labview的while循环制作的流水灯,可通过一个控件控制流水灯闪烁的频率,简单易学

    循环队列实现求k阶斐波那契数列

    用循环队列编写求k阶斐波那契序列中前n+1项(f0,,f1,f2,…,fn)的算法,满足fn,而fn +1&gt;max,max为某个约定的常数,所用循环队列的容量为k,且算法结束时,留在队列中的元素为所求k阶斐波那契序列中的最后k项

    8个led灯循环点亮程序c语言

    通过以上知识点,我们可以理解并实现一个基于8051单片机的8个LED灯循环点亮的C语言程序。程序通过控制P1口的输出,依次点亮连接在其上的LED灯,形成一个循环点亮的效果。整个程序的编写需要熟悉单片机的基本操作、...

Global site tag (gtag.js) - Google Analytics