今天给各位分享java生成唯一编号的知识,其中也会对java获取唯一序列号进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、java里往数据库里加数据 之后自动生成一个序号 唯一不重复 生成规则为 数据库中某一字段+000012、用java实现字母与数字混合的唯一序号,且要递增3、使用java.util.UUID生成唯一标识,为什么生成唯一标识的方法有些还需要参数?
java里往数据库里加数据 之后自动生成一个序号 唯一不重复 生成规则为 数据库中某一字段+00001
两种解决方案 ,其实有点类似于ID
1、在数据库加一列,在的程序里写自己写方法处理,然后插入
2、在数据里写函数,写一个触发器
用java实现字母与数字混合的唯一序号,且要递增
import java.util.LinkedList;
public class ReplaceNumber
{
public static void main ( String[] args )
{
LinkedListString result = new LinkedListString ();
char r = ‘0’, g = ‘0’, b = ‘0’;
String rgb = “” + r + g + b;
while (!”ZZZ”.equals (rgb))
{
if (b ‘:’ || ( b = ‘A’ – 1 b = ‘Z’ ))
{
b++;
}
if (‘:’ == b || ‘Z’ + 1 == b)
{
if (g ‘:’)
{
g++;
b = ‘9’;
}
if (g ‘Z’ + 1 g ‘:’)
{
g++;
b = ‘Z’;
}
}
if (‘:’ == g || ‘Z’ + 1 == g)
{
if (r ‘9’)
{
r++;
g = ‘9’;
}
if (r ‘Z’ + 1 r ‘:’)
{
r++;
g = ‘Z’;
}
}
rgb = “” + r + g + b;
if (“999”.equals (rgb))
{
r = ‘A’;
g = ‘0’;
b = ‘0’;
}
if (“A99”.equals (rgb))
{
r = ‘A’;
g = ‘A’;
b = ‘0’;
}
if (“AA9”.equals (rgb))
{
r = ‘A’;
g = ‘A’;
b = ‘A’ – 1;
}
result.add (rgb);
}
System.out.println (“唯一序列号:\n” + result.toString ().replaceAll (“[\\[\\]]”, “”).replaceAll (“\\, “, “\n”));
}
}
使用java.util.UUID生成唯一标识,为什么生成唯一标识的方法有些还需要参数?
//先看不加参数的源码
public static UUID randomUUID() {
SecureRandom ng = Holder.numberGenerator;
byte[] randomBytes = new byte[16];
ng.nextBytes(randomBytes);
randomBytes[6] = 0x0f; /* clear version */
randomBytes[6] |= 0x40; /* set to version 4 */
randomBytes[8] = 0x3f; /* clear variant */
randomBytes[8] |= 0x80; /* set to IETF variant */
return new UUID(randomBytes);//看到这里没,其实也是调用的带参数的,只不过
//所带参数的是给你随机出来的
}
//再看带参数的
public static UUID nameUUIDFromBytes(byte[] name) {
MessageDigest md;
try {
md = MessageDigest.getInstance(“MD5”);
} catch (NoSuchAlgorithmException nsae) {
throw new InternalError(“MD5 not supported”);
}
byte[] md5Bytes = md.digest(name);//这里就是对给的byte[]参数进行md5运算之后再进行计算UUID
md5Bytes[6] = 0x0f; /* clear version */
md5Bytes[6] |= 0x30; /* set to version 3 */
md5Bytes[8] = 0x3f; /* clear variant */
md5Bytes[8] |= 0x80; /* set to IETF variant */
return new UUID(md5Bytes);
}
关于java生成唯一编号和java获取唯一序列号的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。