0

我有一个带有“标识符”属性的表。我需要这个属性是唯一的并且自动递增一(属性的长度必须是六位数)。

例如,我第一次持久化一个实体时,标识符应该是 000001,第二个是 000002,依此类推。

你能告诉我如何实现这个要求吗?

提前致谢。

4

1 回答 1

3

您必须将您的号码转换为字符串。为此,您可以使用 String.format。

 String.format("%06d", num)

'0' 用 0 填充空白。
'6' 结果的大小为 6。
'd' 结果被格式化为十进制整数。

例如:

 int num = 8;
 String var = String.format("%06d", num);

将返回:

 var = "000008"

编辑: String.format 的语法可以在这里找到:http: //docs.oracle.com/javase/7/docs/api/java/util/Formatter.html#syntax

如果你想从你的基础中检索一个 ID,只需将字符串解析为一个数字:

String identifier = "000008"; // Returned ID from database
Number num = Integer.parseInt(identifier); // num = 8
于 2013-07-28T14:28:47.757 回答