Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建用户id(0001、0002等)CORBA/Java_Java_Unique_Uuid_Corba - Fatal编程技术网

创建用户id(0001、0002等)CORBA/Java

创建用户id(0001、0002等)CORBA/Java,java,unique,uuid,corba,Java,Unique,Uuid,Corba,我在CORBA中创建了一个应用程序,它只允许用户在运行时注册和存储信息。我必须为每个注册的用户分配一个唯一的ID。第一个用户的唯一ID必须为0001格式,第二个用户的唯一ID必须为0002格式,等等。通过在线查看,我无法找到多少关于如何以这种格式分配这些数字的信息 为每个客户分配唯一的ID。 唯一ID基于由服务器维护的计数器。 第一次注册将分配ID 0001,但表示为字符串 我的仆人代码如下: 公共类AccountServant实现AccountManagerOperations{ double

我在CORBA中创建了一个应用程序,它只允许用户在运行时注册和存储信息。我必须为每个注册的用户分配一个唯一的ID。第一个用户的唯一ID必须为0001格式,第二个用户的唯一ID必须为0002格式,等等。通过在线查看,我无法找到多少关于如何以这种格式分配这些数字的信息

为每个客户分配唯一的ID。 唯一ID基于由服务器维护的计数器。 第一次注册将分配ID 0001,但表示为字符串

我的仆人代码如下:

公共类AccountServant实现AccountManagerOperations{

double topupBalance = 0;
int credit = 0;
int uid = 0;

public void topup(double amount){
        topupBalance = topupBalance+amount;
        credit = credit +1;
    }

    public double getBalance(){
        return topupBalance;
    }

    public int getUniqueID(){
        DecimalFormat decimalFormat = new DecimalFormat("0000");
        uid = uid +1;
        return uid;
}

public static Hashtable hashtable = new Hashtable();

public static ORB orb;

public AccountServant (org.omg.CORBA.ORB orb){

    this.orb=orb;
}

public void storeAccountDetails (AnyTopUpAccount.KamaradAccountDetails myKamaradAccountDetails){
    hashtable.put(myKamaradAccountDetails.name, myKamaradAccountDetails);

}

public Any getAccountDetails (String name, AnyHolder myKamaradAccountDetails){

Any anyDD = orb.create_any();

KamaradAccountDetails tempKamaradAccDetails = (KamaradAccountDetails)hashtable.get(name);
KamaradAccountDetailsHelper.insert(anyDD, tempKamaradAccDetails);
myKamaradAccountDetails.value = anyDD;

return anyDD ;
}

}

int
是一种不允许前导零的32位整数类型。您可以对唯一ID使用整数类型,然后使用格式化来显示ID

private static final DecimalFormat decimalFormat = new DecimalFormat("0000");
...

public String getUniqueIDText(){
    return decimalFormat.format(uid);
}